Real-time Signal Processing Method for Non-cooperative Bistatic Radar Based on Heterogeneous Platforms
Through a heterogeneous platform composed of multi-core CPUs and multiple GPUs, real-time signal processing of non-cooperative dual-base radars is realized, the problem of high computing power is solved, processing speed and computing efficiency are improved, and target point traces are output.
Patent Information
- Application Number
- CN202510650323.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-20
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2045-05-20
AI Technical Summary
Non-cooperative dual-base radar systems have high computing power requirements in real-time signal processing, and the existing DSP+FPGA architecture is difficult to quickly adjust and maintain, and the algorithm complexity and computing volume are large.
A heterogeneous platform composed of multi-core CPUs and multi-block GPUs is used to realize parallel computing through data interaction threads, and combines technologies such as frame header identifier analysis, matching filtering, fast Fourier transformation and phase comparison accumulation to perform signal processing and output target points.
Real-time signal processing is realized, processing speed and computing efficiency is improved, computing power requirements are reduced, low latency and high throughput requirements are met, and target point trace arrays are output.
Smart Images

Figure CN120161433B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of non-cooperative bistatic radar signal processing, and particularly to a real-time signal processing method for non-cooperative bistatic radar based on a heterogeneous platform. Background Art
[0002] The non-cooperative bistatic radar based on radar signals does not radiate signals outward by itself, but realizes target detection through coherent processing of the direct wave signal of the radar radiation source and the target scattered echo signal in a silent reception mode. It is very difficult for the other party to detect it through corresponding electronic reconnaissance equipment, and it is even more impossible to locate and track it, which greatly improves the survivability. At the same time, the non-cooperative bistatic radar also has the advantages of low construction and maintenance costs, flexible station layout, and no frequency occupation problems.
[0003] The non-cooperative bistatic radar receiving system includes a reference channel and an echo channel, which are respectively used to receive the direct wave signal from the radar radiation source and the echo signal after target scattering. The reference channel completes the extraction of parameters such as the carrier frequency, bandwidth, pulse width, and pulse arrival time of the radiation source radar. The echo channel intercepts the echo signal using the pulse arrival time extracted in the reference channel, and performs digital mixing on the echo signal within the intercepted interval in combination with the extracted carrier frequency parameter, converts it into a baseband signal, and completes a series of subsequent signal processing and target detection operations.
[0004] Different from the monostatic radar with integrated transceiver or the cooperative bistatic radar with an information communication channel, the non-cooperative bistatic radar system cannot obtain the working state of the radar radiation source, especially the emission direction and beam scanning mode. To solve the spatial synchronization problem, the simultaneous multi-beam reception method is usually adopted to expand the reception range as much as possible. In addition, since the system has separate transceiver and no information interaction, more complex algorithms are usually required for time-frequency synchronization and data processing, at the cost of higher algorithm complexity and computing amount. Therefore, the non-cooperative bistatic radar system has high requirements for computing power, and how to achieve real-time signal processing is a major difficulty.
[0005] The real-time signal processing of traditional radar systems is carried out through embedded development of Digital Signal Processing (DSP) chips and Field Programmable Gate Arrays (FPGA), and a dedicated signal processing board is integrated. However, due to high coupling and complex FPGA programming, it is difficult and time-consuming to adjust and maintain the real-time signal processing platform with the DSP+FPGA architecture.
[0006] Therefore, there is an urgent need for a technical solution to solve the above problems. Summary of the Invention
[0007] In view of the defects existing in the prior art, the present invention provides a real-time signal processing method for a non-cooperative bistatic radar based on a heterogeneous platform.
[0008] To achieve the above object, the technical solution adopted by the present invention is as follows:
[0009] The real-time signal processing method for a non-cooperative bistatic radar based on a heterogeneous platform provided by the present invention includes the following steps:
[0010] S1. Build a heterogeneous platform, which is composed of a multi-core CPU and multiple GPUs;
[0011] S2. Obtain the CPU pinned memory areas corresponding to the number of GPU blocks, create data interaction threads, and transfer data from each CPU pinned memory area to the corresponding GPU through the data interaction threads to achieve parallel computing;
[0012] S3. Parse the data through frame header identifier retrieval to obtain transmitted signal parameter information, multi-channel echo data, and reference channel data, and obtain echo beam data based on the transmitted signal parameter information and multi-channel echo data;
[0013] S4. Zero-pad the echo beam data and reference channel data to the next-nearest higher power of 2 of the original pulse sampling points, and perform matched filtering on the zero-padded echo beam data to obtain the range one-dimensional image;
[0014] S5. Perform multi-threaded parallel fast Fourier transform calculation in the slow time dimension of the range one-dimensional image to obtain the coherently integrated data;
[0015] S6. Based on the coherently integrated data, perform parallel power calculation, threshold calculation, constant false alarm rate detection in the range dimension, constant false alarm rate detection in the Doppler dimension, amplitude comparison direction finding, and target positioning to obtain target tracks;
[0016] S7. Sort the target tracks according to time sequence, group the sorted tracks, and use the M / N algorithm to screen the track groups, and fuse each screened track group into a single track by taking the average value to output the final target track array.
[0017] Further, in S2, the parallel computing is realized according to the following steps:
[0018] S21. Create 1 data interaction thread DT, 4 CPU pinned memory areas, and corresponding data processing threads on the CPU side. The 4 pinned memory areas are respectively named CM1, CM2, CM3, and CM4, and the corresponding data processing threads are named T1, T2, T3, and T4;
[0019] S22. Read the data to be processed. Using the ping-pong mechanism, alternately read and write to 4 fixed memory areas in parallel preprocessing space to achieve zero-waiting data switching;
[0020] S23. Bind the 4 fixed memory areas and the corresponding data processing threads to the GPU to form the corresponding relationships T1-CM1-D1, T2-CM2-D2, T3-CM3-D3, T4-CM4-D4, where D1, D2, D3, D4 are the GPU names corresponding to the fixed memory areas and the corresponding data processing threads;
[0021] S24. Create 4 fixed memory areas of equal size on the GPU side for data processing by 4 threads, named DM1, DM2, DM3, and DM4 respectively;
[0022] S25. Bind the 4 fixed memory areas on the GPU side to the corresponding relationships in S23 to form the final corresponding relationships of T1-CM1-D1-DM1, T2-CM2-D2-DM2, T3-CM3-D3-DM3, T4-CM4-D4-DM4.
[0023] Further, in S3, the echo beam data is obtained according to the following steps:
[0024] S31. Retrieve the frame header identifier based on the protocol agreed with the front end to obtain the starting position of the frame header for each pulse, and store this position information;
[0025] S32. Extract the frame header information and the pulse data expanded in one-dimensional form based on the protocol agreed with the front end and the stored frame header starting position information. The frame header information includes the transmit signal parameters and the receiver parameters, and extract and reorganize the pulse data according to the front-end storage format to obtain the multi-channel echo data and the reference channel data in complex form;
[0026] S33. Obtain the total number of pulses currently processed according to the number of frame headers extracted , and reorganize the reference channel data into a two-dimensional array: the number of pulse sampling points × the total number of pulses ;
[0027] S34. According to and the number of receiving channels stored in the frame header information , reorganize the multi-channel echo data into a three-dimensional array: ;
[0028] S35. Based on the number of beams to be processed , define the storage space of the three-dimensional array on the GPU side. The three-dimensional array is: ;
[0029] S36. Set the number of parallel threads of the kernel function on the GPU side , based on calculate the amount of data and perform data chunking according to the amount of data, call the steering vector matrix pre-loaded on the GPU side, perform matrix multiplication with the three-dimensional array of multi-channel echo data to obtain echo beam data, and put the echo beam data into the storage space of the three-dimensional array defined in S35.
[0030] Further, in S4, the range one-dimensional image is obtained according to the following steps:
[0031] S41. Based on the number of pulse sampling points calculate the second-nearest higher power of 2 , call the kernel function on the GPU side to pad zeros to the pulse sampling point dimension of the reference channel data and the echo beam data, so that the number of pulse sampling points increases from to ;
[0032] S42. Pre-define the storage space of the three-dimensional array of the matched filtering result on the GPU side, and the three-dimensional array is: ;
[0033] S43. Calculate the amount of data and perform data chunking according to the amount of data, call the fast Fourier transform, inverse fast Fourier transform, and matrix conjugate multiplication functions to perform matched filtering calculations on the echo beam data after data chunking, intercept the first points in the pulse sampling point dimension of the calculation result to obtain the range one-dimensional image, and store it in the storage space of the three-dimensional array defined in S42;
[0034] Call the fast Fourier transform, inverse fast Fourier transform, and matrix conjugate multiplication functions to calculate according to the following formula:
[0035] ;
[0036] where is the matched filtering calculation result; is the echo signal; is the reference signal; is the fast Fourier transform; is the inverse fast Fourier transform; n is the n th pulse sampling point.
[0037] Further, in S5, the data after coherent integration is obtained according to the following steps:
[0038] S51. Pre-define the storage space of the three-dimensional array of the coherent integration result on the GPU side, and the three-dimensional array is: ;
[0039] S52. Call the fast Fourier transform function to process the range one-dimensional image in the slow time dimension, obtain the data after coherent integration, and store it in the storage space of the three-dimensional array defined by S52;
[0040] Process the range one-dimensional image according to the following formula:
[0041] ;
[0042] where, is the data after coherent integration; is the th range cell; is the th Doppler cell; ; is the imaginary unit; e is the base of the natural logarithm; .
[0043] Further, in S6, the target trace is obtained according to the following steps:
[0044] S61. Calculate the data volume and perform data chunking on the data after coherent integration according to the data volume. Create GPU processing threads in each data processing main thread to achieve large-scale data parallel computing;
[0045] S62. Calculate the detection thresholds of the range dimension and the Doppler dimension in parallel through pre-grouping, and construct a cell-averaged constant false alarm rate detection threshold table; Calculate the cell-averaged constant false alarm rate detection threshold according to the following formula:
[0046] ;
[0047] ;
[0048] where, is the total number of training cells; is the constant false alarm rate; is the cell-averaged constant false alarm rate detection threshold coefficient; is the cell-averaged constant false alarm rate detection threshold; is the power value of the n th training cell;
[0049] S63. Eliminate the corresponding units to be detected according to the set blind area range, numerically compare each unit to be detected with the corresponding detection threshold based on the cell-averaging constant false alarm rate (CA-CFAR) detection threshold table. If the power of the unit to be detected is greater than the detection threshold, determine that the unit to be detected is a preliminary target point. Then, numerically compare the preliminary target point with its adjacent units to be detected. If the power value of the preliminary target point is greater than that of the adjacent units to be detected, it is determined as an initial target point. Obtain all the target points to form a range-dimension target point array;
[0050] S64. Eliminate the part of the range-dimension target point array where the Doppler unit is at zero frequency to obtain the processed range-dimension target point array. Numerically compare each initial target point in the processed range-dimension target point array with the detection threshold based on the cell-averaging constant false alarm rate (CA-CFAR) detection threshold table. If the power of the initial target point is greater than the detection threshold, determine that the initial target point is a pre-target point. Then, numerically compare the pre-target point with its adjacent Doppler units. If the power value of the pre-target point is greater than that of the adjacent Doppler units, it is determined as a target point. Obtain all the target points to form a Doppler-dimension target point array;
[0051] S65. Confirm the amplitude of the beam where the target point is located. If the amplitude of the beam where the target point is located is the maximum within the range of adjacent beams, calculate the difference and ratio between the amplitude of the target point and the amplitude of the adjacent larger beam, and then load the angle discrimination coefficient matrix. Obtain the target point angle according to the following formula:
[0052] ;
[0053] ;
[0054] where, is the direction of the beam where the detected target is located; is the corresponding amplitude value of the direction of the beam where the detected target is located; is the direction of the beam with a larger amplitude among the adjacent beams; is the corresponding amplitude value of the direction of the beam with a larger amplitude among the adjacent beams; , , are the angle discrimination coefficients corresponding to the target; is the difference and ratio; is the angle of the target relative to the receiving array;
[0055] Obtain the angles of all the target points in the Doppler-dimension target point array to obtain the target detection result;
[0056] If the amplitude of the beam where the target point is located is not the maximum within the range of adjacent beams, eliminate the target point, and then calculate according to the above formula for all the target points to obtain the target detection result;
[0057] S66. Calculate the receiving distance and north declination of all target points according to the bistatic deployment relationship and target detection results transmitted from the front end, and form a target track according to the following formula:
[0058] ;
[0059] ;
[0060] ;
[0061] ;
[0062] ;
[0063] Among them, is the angle between the target and the baseline; is the bistatic baseline distance resolved and received from the front end when the system performs target positioning and the north declination of the baseline with the receiving array surface as the reference; is the north declination of the normal of the receiving array surface; is the detected bistatic range difference of the target; is the bistatic distance represented by each range cell; is the sampling rate of the receiving end; is the speed of light; is the detected target point range cell; is the distance relative to the receiving array surface; is the north declination of the target.
[0064] Furthermore, in S7, the final target track array is output according to the following steps:
[0065] S71. Create a track fusion thread PS1 on the CPU side;
[0066] S72. Input the tracks P1, P2, P3, and P4 output by the 4 main threads T1-CM1-D1-DM1, T2-CM2-D2-DM2, T3-CM3-D3-DM3, and T4-CM4-D4-DM4 into PS1;
[0067] S73. Extract the time information of all tracks in PS1 on the CPU side, and then call the sorting function to sort the tracks according to the time sequence;
[0068] S74. Set the grouping standard based on the distance and angle measurement accuracy of the system, traverse the sorted tracks, and group the tracks whose distance difference and angle difference both meet the grouping standard into the same group to obtain track groups;
[0069] S75. Screen the point track groups based on the M / N algorithm, count the number of targets in each group. If the number of targets is greater than the detection times threshold M, fuse all the point tracks in the point track group into one point track by taking the average of the distance and angle, otherwise consider the targets in the point track group as false alarms and eliminate them;
[0070] S76. Obtain all the fused point tracks, construct the final target point track array and output it.
[0071] Further, in S74, the grouping criterion is: taking the first point track of the sorted point tracks as the reference point track, compare each subsequent point track with this point track in terms of distance and angle. If the differences between them are both less than the distance detection accuracy and the angle detection accuracy, consider that this point track and the reference point track belong to the same point track group, otherwise take this point track as the reference point track of a new group.
[0072] Further, the data volume is calculated according to the following formula:
[0073] .
[0074] Further, the data block needs to satisfy , ;
[0075] where is the farthest detection distance required by the front end when the pulse width of the signal emitted by the external radiation source detected currently is and the pulse repetition interval is ; is the speed of light; is the sampling rate of the receiving end.
[0076] Compared with the prior art, the beneficial technical effects of the present invention are as follows:
[0077] The real-time signal processing method for non-cooperative bistatic radar based on heterogeneous platforms provided by the present invention makes full use of the heterogeneous server architecture of multi-core CPU + multiple GPUs in parallel. When creating core multi-threads on the CPU side, the ping-pong mechanism is combined to maximize resource utilization, so as to meet the requirements of low latency and high throughput. By using multiple GPUs and creating the corresponding number of main processing threads on the CPU side for parallel data processing, the processing rate is increased several times. By reorganizing multi-channel echo data into a three-dimensional array for subsequent parallel vectorized operations to achieve accelerated computing. By implementing multi-threaded parallel high-speed computing of fast Fourier transform and inverse fast Fourier transform on the GPU side to adapt to large data volume scenarios and achieve real-time signal processing. Then, through coherent accumulation, a coherent signal vector is constructed in the slow time dimension and coherently superimposed, so as to achieve an increase in the target signal-to-noise ratio. The present invention calculates the cell-averaging constant false alarm rate detection threshold, constructs a cell-averaging constant false alarm rate detection threshold table to store the detection thresholds in the range dimension and Doppler dimension, and then parallelly implements the threshold-crossing detection by looking up the table, thereby optimizing the processing efficiency. By rearranging the traces in chronological order and using trace grouping and M / N algorithms to screen the traces after arrangement, and performing trace fusion based on range detection accuracy and angle detection accuracy, the final target trace array is output. Therefore, the present invention simplifies the algorithm complexity and improves the operation efficiency through parallel processing, reduces the computing power requirements of the non-cooperative bistatic radar system, thereby realizing real-time signal processing and outputting target traces. Description of the Drawings
[0078] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on the structures shown in these drawings.
[0079] Figure 1 It is a flowchart of the real-time signal processing method for non-cooperative bistatic radar based on heterogeneous platforms provided in an embodiment;
[0080] Figure 2 It is a schematic diagram of multi-threads with multi-core CPU and multiple GPUs in parallel provided in an embodiment;
[0081] Figure 3 It is a comparison diagram of serial computing and parallel computing provided in an embodiment, where Figure 3 (a) is a schematic diagram of the running process of a serial GPU, Figure 3 (b) is a schematic diagram of the running of a parallel GPU;
[0082] Figure 4Comparison diagram of the matched filtering algorithm provided for an embodiment, where Figure 4 (a) is a schematic diagram of the existing matched filtering algorithm, Figure 4 (b) is a schematic diagram of the matched filtering algorithm with multi-core CPU and multiple GPUs in parallel;
[0083] Figure 5 Comparison diagram of the constant false alarm rate detection algorithm provided for an embodiment, where Figure 5 (a) is a schematic diagram of the existing constant false alarm rate detection algorithm, Figure 5 (b) is a schematic diagram of the constant false alarm rate detection algorithm with multiple GPUs in parallel;
[0084] Figure 6 Schematic diagram of bistatic target localization provided for an embodiment. Detailed implementation manners
[0085] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
[0086] Referring to Figure 1 , an embodiment provides a non-cooperative bistatic radar real-time signal processing method based on a heterogeneous platform, including the following steps:
[0087] S1. Build a heterogeneous platform, which is composed of a multi-core CPU and multiple GPUs;
[0088] S2. Obtain the CPU fixed memory areas corresponding to the number of GPU blocks, create data interaction threads, and transfer data from each CPU fixed memory area to the corresponding GPU through the data interaction threads to achieve parallel computing;
[0089] S3. Perform data parsing through frame header identifier retrieval to obtain transmitted signal parameter information, multi-channel echo data, and reference channel data, and obtain echo beam data based on the transmitted signal parameter information and multi-channel echo data;
[0090] S4. Zero-pad the echo beam data and reference channel data to the next nearest higher power of 2 times the original pulse sampling points, and perform matched filtering on the zero-padded echo beam data to obtain the range one-dimensional image;
[0091] S5. Perform multi-threaded parallel fast Fourier transform calculation in the slow time dimension of the range one-dimensional image to obtain the coherently integrated data;
[0092] S6. Based on the data after coherent accumulation, perform parallel power calculation, threshold calculation, constant false alarm rate detection in the range dimension, constant false alarm rate detection in the Doppler dimension, amplitude comparison direction finding, and target positioning to obtain target traces.
[0093] S7. Sort the target traces in chronological order, group the sorted traces, and use the M / N algorithm to screen the trace groups. Each screened trace group is fused into a single trace by taking the mean value, and the final target trace array is output.
[0094] In one embodiment, the heterogeneous platform consists of a multi-core CPU and 4 GPUs; Refer to Figure 2 , in S2, the parallel calculation is implemented according to the following steps:
[0095] S21. Create 1 data interaction thread DT, 4 CPU fixed memory areas, and corresponding data processing threads on the CPU side. The 4 fixed memory areas are named CM1, CM2, CM3, and CM4 respectively, and the corresponding data processing threads are named T1, T2, T3, and T4.
[0096] S22. Read the data to be processed, and use the ping-pong mechanism to alternately read and write the 4 fixed memory areas in parallel in the preprocessing space to achieve zero-waiting data switching.
[0097] S23. Bind the 4 fixed memory areas and the corresponding data processing threads to the GPU to form the corresponding relationships T1-CM1-D1, T2-CM2-D2, T3-CM3-D3, T4-CM4-D4, where D1, D2, D3, and D4 are the names of the GPUs corresponding to the fixed memory areas and the corresponding data processing threads.
[0098] S24. Create 4 fixed memory areas of equal size on the GPU side for data processing by 4 threads, named DM1, DM2, DM3, and DM4 respectively.
[0099] S25. Bind the 4 fixed memory areas on the GPU side to the corresponding relationships in S23 to form the final corresponding relationships of T1-CM1-D1-DM1, T2-CM2-D2-DM2, T3-CM3-D3-DM3, T4-CM4-D4-DM4.
[0100] By partitioning the memory on the CPU side, 4 fixed memory areas named CM1, CM2, CM3, and CM4 are obtained. After receiving the data collected by the front end, the data is divided into 4 data packets of equal size and stored in the previously partitioned CPU fixed memory areas, and the data reading rate is optimized through the ping-pong mechanism. Among them, the front-end collection rate is 1 GB / s, and the data volume of each fixed memory area on the CPU side is 256 MB; Refer toFigure 3 , through data interaction between the CPU and the GPU, the data is transmitted to the corresponding GPU, and 4 main data processing threads are created on the CPU side for parallel data processing, thereby increasing the processing rate by 4 times; in the serial working mode, the calculation time of each part accumulatively increases; obviously, when processing data of the same size, the present invention can increase the processing rate by several times the number of GPU blocks.
[0101] In one embodiment, in S3, the echo beam data is obtained according to the following steps:
[0102] S31. Retrieve the frame header identifier based on the protocol agreed with the front end, obtain the starting position of the frame header of each pulse, and store the position information;
[0103] S32. Extract the frame header information and the pulse data expanded in one-dimensional form based on the protocol agreed with the front end and the stored frame header starting position information. The frame header information includes the transmit signal parameters (transmit signal pulse width, pulse repetition period, and carrier frequency) and the receiver parameters (receiver sampling rate, number of echo channels), and extract and reorganize the pulse data according to the front-end storage format to obtain the multi-channel echo data and reference channel data in complex form;
[0104] S33. Obtain the total number of pulses currently processed according to the number of extracted frame headers , reorganize the reference channel data into a two-dimensional array: number of pulse sampling points × total number of pulses ;
[0105] S34. According to and the number of receiving channels stored in the frame header information , reorganize the multi-channel echo data into a three-dimensional array: ;
[0106] S35. Based on the number of beams to be processed , define the storage space of the three-dimensional array on the GPU side. The three-dimensional array is: ;
[0107] S36. Set the number of parallel threads of the kernel function on the GPU side , based on calculate the data volume and perform data chunking according to the data volume, call the steering vector matrix pre-loaded on the GPU side, multiply it with the three-dimensional array of the multi-channel echo data, obtain the echo beam data, and put the echo beam data into the storage space of the three-dimensional array defined in S35.
[0108] Since the data collected at the front end writes the radar emitter parameter information measured based on the direct wave channel into the data frame header of each echo pulse, the present invention performs data parsing by retrieving the frame header identifier to obtain the transmitted signal parameter information, multi-channel echo data, and reference channel data; the multi-channel echo data is reorganized into a three-dimensional array, which facilitates subsequent parallel vectorization operations and realizes accelerated calculation. By additionally creating parallel processing threads within the kernel function on the GPU side of each data processing thread to improve the calculation efficiency, where needs to be an integer multiple of 1024.
[0109] wherein, the data volume is calculated according to the following formula:
[0110] .
[0111] It can be seen from the above formula that whether the processed echo data is a two-dimensional array or a three-dimensional array, the total number of data sampling points processed within 1 s needs to be an integer multiple of.
[0112] Moreover, in order not to affect the radar detection performance, the data block needs to satisfy , ;
[0113] wherein, is the pulse width of the transmitted signal of the external emitter detected currently as and the pulse repetition interval is when the farthest detection distance required by the front end; is the speed of light; is the sampling rate at the receiving end.
[0114] In one embodiment, in S4, the range one-dimensional image is obtained according to the following steps:
[0115] S41. Based on the number of pulse sampling points calculate the next nearest higher power of 2 , call the kernel function on the GPU side to zero-pad the number of pulse sampling points dimension of the reference channel data and the echo beam data, so that the number of pulse sampling points increases from to ;
[0116] S42. Pre-define the storage space of the three-dimensional array of the matched filtering result on the GPU side, and the three-dimensional array is: ;
[0117] S43. Calculate the data volume and perform data block according to the data volume, call the fast Fourier transform, inverse fast Fourier transform, and matrix conjugate multiplication functions to perform matched filtering calculation on the echo beam data after data block, and intercept the first points to obtain the range one-dimensional image, and store it in the storage space of the three-dimensional array defined by S42;
[0118] Call the fast Fourier transform, inverse fast Fourier transform, and matrix conjugate multiplication functions to calculate according to the following formula:
[0119] ;
[0120] where, is the result of matched filtering calculation; is the echo signal; is the reference signal; is the fast Fourier transform; is the inverse fast Fourier transform; n is the n th pulse sampling point.
[0121] Considering the characteristics of the fast Fourier transform algorithm itself, the sidelobes of the direct wave pulse compression result in the echo channel after matched filtering will appear at the tail of the signal. In the present invention, zero padding is performed on the data, and then matched filtering is performed on the zero-padded echo beam data. At the same time, the data is transformed into the frequency domain for calculation, thereby reducing the computational complexity. By implementing multi-threaded parallel high-speed calculation of the fast Fourier transform and inverse fast Fourier transform on the GPU side, it can adapt to the large data volume scenario and achieve real-time signal processing. Refer to Figure 4 , compared with the existing matched filtering algorithm, the present invention realizes matched filtering throughout the process on the GPU side, thereby avoiding repeated data copying between the CPU and the GPU and greatly improving the operation rate.
[0122] In one embodiment, in S5, the data after coherent integration is obtained according to the following steps:
[0123] S51. Pre-define the storage space of the three-dimensional array of the coherent integration result on the GPU side. The three-dimensional array is: ;
[0124] S52. Call the fast Fourier transform function to process the range one-dimensional image in the slow time dimension, obtain the data after coherent integration, and store it in the storage space of the three-dimensional array defined by S52;
[0125] Process the range one-dimensional image according to the following formula:
[0126] ;
[0127] where, is the data after coherent integration; is the th range cell; is the Doppler units; ; is an imaginary unit; e is the base of natural logarithms; .
[0128] Through coherent accumulation, coherent signal vectors are constructed in the slow time dimension and coherent superposition is performed, thereby achieving the target signal-to-noise ratio improvement.
[0129] In one embodiment, in S6, the target point trace is obtained according to the following steps:
[0130] S61, calculate the data volume and divide the data after coherent accumulation into blocks according to the data volume, and create a block in each data processing main thread. GPU processing threads to achieve large-scale data parallel computing;
[0131] S62, calculating the detection thresholds of the distance dimension and the Doppler dimension in parallel by pre-grouping, and constructing a unit average constant false alarm rate detection threshold table; calculating the unit average constant false alarm rate detection threshold according to the following formula:
[0132] ;
[0133] ;
[0134] in, is the total number of training units; is a constant false alarm rate; is the unit average constant false alarm rate detection threshold coefficient; is the unit average constant false alarm rate detection threshold; For the n The power value of each training unit;
[0135] In the unit average constant false alarm rate detection, it is necessary to set the protection unit parameters to exclude the target's main lobe widening area from the noise estimation area. B For a linear frequency modulation signal, the main lobe width is 1 / B , the corresponding number of distance units is , the number of protection units must be at least greater than the number of distance units.
[0136] S63, eliminating the corresponding units to be detected according to the set blind area range, and performing a numerical comparison between each unit to be detected and the corresponding detection threshold based on the unit average constant false alarm rate detection threshold table. If the power of the unit to be detected is greater than the detection threshold, the unit to be detected is determined to be a preliminary target point. The preliminary target point is then numerically compared with its adjacent units to be detected. If the power value of the preliminary target point is greater than that of the adjacent units to be detected, it is determined to be the preliminary target point. All target points are obtained to form a distance-dimensional target point array.
[0137] S64. Remove the part of the range - dimension target - point array where the Doppler cell is at zero frequency, obtaining the processed range - dimension target - point array. Numerically compare each initial target point in the processed range - dimension target - point array based on the cell - averaged constant false - alarm rate (CA - Cfar) detection - threshold table. If the power of the initial target point is greater than the detection threshold, then determine that the initial target point is a preliminary target point. Then, numerically compare the preliminary target point with its adjacent Doppler cells. If the power value of the preliminary target point is greater than that of the adjacent Doppler cells, then it is determined as a target point. Obtain all the target points to form the Doppler - dimension target - point array;
[0138] S65. Confirm the amplitude of the beam where the target point is located. If the amplitude of the beam where the target point is located is the maximum within the range of adjacent beams, then calculate the difference and ratio between the target - point amplitude and the amplitude of the adjacent larger - amplitude beam. Then, load the angle - discrimination coefficient matrix and obtain the target point angle according to the following formula:
[0139] ; ;
[0140] where, is the pointing of the beam where the detected target is located; is the corresponding amplitude value of the pointing of the beam where the detected target is located; is the pointing of the beam with a larger amplitude among the adjacent beams; is the corresponding amplitude value of the pointing of the beam with a larger amplitude among the adjacent beams; , , are the angle - discrimination coefficients corresponding to the target; is the difference - and - ratio; is the angle of the target relative to the receiving array surface;
[0141] Obtain the angles of all the target points in the Doppler - dimension target - point array to get the target - detection result;
[0142] If the amplitude of the beam where the target point is located is not the maximum within the range of adjacent beams, then remove the target point. Then, calculate according to the above formula for all target points to get the target - detection result;
[0143] S66. According to the bistatic - deployment relationship transmitted by the front - end and the target - detection result, calculate the receiving distance and north - deviation angle of all target points according to the following formula to form the target track:
[0144] ;
[0145] ;
[0146] ;
[0147] ;
[0148] ;
[0149] Wherein, is the angle between the target and the baseline; is the bistatic baseline distance received from the front end and solved when the system locates the target and the north deviation angle of the baseline with the receiving array surface as the reference; is the north deviation angle of the normal line of the receiving array surface; is the detected bistatic range difference of the target; is the bistatic distance represented by each range cell; is the sampling rate of the receiving end; is the speed of light; is the detected range cell of the target point; is the distance relative to the receiving array surface; is the north deviation angle of the target.
[0150] Referring to Figure 6 , for a non-cooperative bistatic radar, it is necessary to bring in the bistatic deployment relationship to solve the actual position relationship between the target and the receiving array surface, so as to achieve target positioning. Among them, A is the target; R t is the distance between the target and the radiation source; T R is the receiving array. The bistatic deployment relationship is calculated based on the GPS positions of the radiation source radar and the receiving array surface.
[0151] By calculating the cell-averaging constant false alarm rate detection threshold, constructing a cell-averaging constant false alarm rate detection threshold table to store the detection thresholds in the range dimension and Doppler dimension, and then implementing the over-threshold detection in parallel by looking up the table, the processing efficiency is optimized; to avoid the same adjacent range cells being detected, it is necessary to compare the power values within a certain range of range cells after threshold discrimination, and only retain the range cell with the largest power value. Moreover, the Doppler dimension constant false alarm rate detection is performed after the range dimension constant false alarm rate detection, reducing the calculation amount, and additional zero-frequency rejection is also performed therein. Referring to Figure 5 , compared with the existing constant false alarm rate detection algorithms, the present invention realizes parallel calculation through the preprocessing method of sliding window grouping in advance, sets the number of training cells and protection cells, simultaneously extracts the training window regions in the range dimension and Doppler dimension of each cell to be detected, calculates the cell-averaging constant false alarm rate detection threshold, and constructs a cell-averaging constant false alarm rate detection threshold table, and implements the over-threshold detection in parallel by looking up the table, thereby optimizing the processing efficiency.
[0152] In one embodiment, in S7, the final target track array is output according to the following steps:
[0153] S71. Create a track fusion thread PS1 on the CPU side;
[0154] S72. Input the traces P1, P2, P3, and P4 output by the four main threads T1-CM1-D1-DM1, T2-CM2-D2-DM2, T3-CM3-D3-DM3, and T4-CM4-D4-DM4 into PS1;
[0155] S73. Extract the time information of all the traces in PS1 on the CPU side, and then call the sorting function to sort the traces in chronological order;
[0156] S74. Set the grouping criteria based on the distance and angle measurement accuracies of the system, traverse the sorted traces, and group the traces whose distance differences and angle differences both meet the grouping criteria into the same group to obtain trace groups;
[0157] S75. Screen the trace groups based on the M / N algorithm, count the number of targets in each group. If the number of targets is greater than the detection times threshold M, then fuse all the traces in the trace group into one trace by taking the average of the distance and angle, otherwise consider the targets in the trace group as false alarms and eliminate them;
[0158] S76. Obtain all the fused traces, construct the final target trace array and output it.
[0159] In a preferred embodiment, in S74, the grouping criteria are as follows: taking the first trace after sorting as the reference trace, comparing each subsequent trace with this trace in terms of distance and angle. If both differences are less than the distance detection accuracy and the angle detection accuracy, it is considered that this trace and the reference trace belong to the same trace group, otherwise this trace is used as the reference trace for a new group.
[0160] By rearranging the traces in chronological order, and screening the traces by trace grouping and the M / N algorithm after arrangement, and performing trace fusion based on the distance detection accuracy and the angle detection accuracy, the final target trace array is output. Through such processing, all the traces can be processed and saved in the normal order.
[0161] The present invention develops algorithms on a heterogeneous platform composed of a multi-core CPU and multiple GPUs, constructs a real-time signal processing platform with high flexibility and operability. According to the front-end data acquisition rate, the data processing rate can reach at least 1 GB / s, and it can adapt to the real-time processing scenario of non-cooperative bistatic radar multi-channel data based on a pulse-system phased array radar radiation source.
[0162] Matters not covered by the present invention are well-known technologies.
[0163] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.
[0164] The above-described embodiments only represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the scope of the invention. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several deformations and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.
[0165] The above is only the preferred embodiment of the present invention and is not used to limit the present invention. For those skilled in the art, the present invention can have various changes and modifications. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A real-time signal processing method for non-cooperative bistatic radar based on heterogeneous platforms, characterized in that, It includes the following steps: S1. Build a heterogeneous platform, which consists of a multi-core CPU and multiple GPUs; S2. Obtain the CPU-fixed memory areas corresponding to the number of GPU blocks, create data interaction threads, and transfer data from each CPU-fixed memory area to the corresponding GPU through the data interaction threads to achieve parallel computing; S3. Parse the data through frame header identifier retrieval to obtain transmitted signal parameter information, multi-channel echo data, and reference channel data, and obtain echo beam data based on the transmitted signal parameter information and multi-channel echo data; S4. Zero-pad the echo beam data and reference channel data to the next adjacent higher power of 2 of the original pulse sampling points, and perform matched filtering on the zero-padded echo beam data to obtain the range one-dimensional image; S5. Perform multi-threaded parallel fast Fourier transform calculation in the slow time dimension of the range one-dimensional image to obtain the coherently integrated data; S6. Based on the coherently integrated data, perform parallel power calculation, threshold calculation, range dimension constant false alarm rate detection, Doppler dimension constant false alarm rate detection, amplitude comparison direction finding, and target positioning to obtain target tracks; S7. Sort the target tracks in chronological order, group the sorted tracks, and use the M / N algorithm to screen the track groups. Each screened track group is fused into a single track by taking the average value, and the final target track array is output.
2. The real-time signal processing method for non-cooperative bistatic radar based on heterogeneous platforms according to claim 1, characterized in that In S2, the parallel computing is implemented according to the following steps: S21. Create 1 data interaction thread DT, 4 CPU-fixed memory areas, and corresponding data processing threads on the CPU side. The 4 fixed memory areas are named CM1, CM2, CM3, and CM4 respectively, and the corresponding data processing threads are named T1, T2, T3, and T4; S22. Read the data to be processed, adopt the ping-pong mechanism, and alternately read and write the 4 fixed memory areas in the parallel preprocessing space to achieve zero-waiting data switching; S23. Bind the 4 fixed memory areas and the corresponding data processing threads to the GPU to form the corresponding relationships T1-CM1-D1, T2-CM2-D2, T3-CM3-D3, T4-CM4-D4, where D1, D2, D3, and D4 are the names of the GPUs corresponding to the fixed memory areas and the corresponding data processing threads; S24. Create 4 fixed memory areas of equal size on the GPU side for data processing by 4 threads, named DM1, DM2, DM3, and DM4 respectively; S25. Bind the 4 fixed memory areas on the GPU side to the corresponding relationships in S23 to form the final corresponding relationships of T1-CM1-D1-DM1, T2-CM2-D2-DM2, T3-CM3-D3-DM3, T4-CM4-D4-DM4.
3. The real-time signal processing method of a non-cooperative bistatic radar based on a heterogeneous platform according to claim 1, characterized in that In S3, the echo beam data is obtained according to the following steps: S31. Perform frame header identifier retrieval based on the protocol agreed with the front end to obtain the starting position of the frame header of each pulse, and store this position information; S32. Extracting frame header information and pulse data expanded in one-dimensional form based on the protocol agreed upon with the front end and the stored frame header starting position information, wherein the frame header information includes transmission signal parameters and receiver parameters, and extracting and reorganizing the pulse data according to the front end storage format to obtain multi-channel echo data and reference channel data in complex form; S33. Obtain the total number of pulses currently processed based on the number of extracted frame headers , and reorganize the reference channel data into a two-dimensional array: the number of pulse sampling points × the total number of pulses ; S34. According to and the number of receiving channels stored in the frame header information , reorganize the multi-channel echo data into a three-dimensional array: ; S35. Based on the number of beams to be processed , define the storage space of a three-dimensional array on the GPU side. The three-dimensional array is as follows: ; S36. Set the number of parallel threads of the kernel function on the GPU , based on calculate the amount of data and perform data chunking according to the amount of data, call the steering vector matrix pre-loaded on the GPU side, perform matrix multiplication with the three-dimensional array of multi-channel echo data to obtain the echo beam data, and put the echo beam data into the storage space of the three-dimensional array defined by S35.
4. The real-time signal processing method of a non-cooperative bistatic radar based on a heterogeneous platform according to claim 1, characterized in that, In S4, the one-dimensional range image is obtained according to the following steps: S41. Based on the number of pulse samples Calculate the next higher power of 2 , call the kernel function on the GPU side to pad zeros to the dimension of the number of pulse samples of the reference channel data and the echo beam data, so that the number of pulse samples increases from to ; S42. Pre-define the storage space for the three-dimensional array of matched filtering results on the GPU side. The three-dimensional array is as follows: ; S43. Calculate the amount of data and perform data chunking based on the amount of data. Call the fast Fourier transform, inverse fast Fourier transform, and matrix conjugate multiplication functions to perform matched filtering calculations on the echo beam data after data chunking, and intercept the first points in the dimension of the number of pulse sampling points in the calculation result to obtain the one-dimensional range image, and store it in the storage space of the three-dimensional array defined in S42; Calling the Fast Fourier Transform, Inverse Fast Fourier Transform, and Matrix Conjugate Multiplication functions performs calculations according to the following formulas: ; Among them, is the matched filtering calculation result; is the echo signal; is the reference signal; is the fast Fourier transform; is the inverse fast Fourier transform; n is the n th pulse sampling point.
5. The real-time signal processing method of a non-cooperative bistatic radar based on a heterogeneous platform according to claim 1, characterized in that, In S5, the coherently accumulated data is obtained according to the following steps: S51. Pre-define the storage space of a three-dimensional array for the coherent integration result at the GPU side. The three-dimensional array is: , where is the number of accumulated pulses. S52, calling a fast Fourier transform function to process the one-dimensional range image in the slow time dimension, obtaining coherently accumulated data, and storing the data in the storage space of the three-dimensional array defined in S52; The distance one-dimensional image is processed according to the following formula: ; Among them, is the data after coherent accumulation; is the th range cell; is the th Doppler cell; ; is the imaginary unit; e is the base of the natural logarithm; .
6. The real-time signal processing method of a non-cooperative bistatic radar based on a heterogeneous platform according to claim 1, characterized in that In S6, the target point trace is obtained according to the following steps: S61. Calculate the amount of data and perform data chunking on the coherently integrated data according to the amount of data. Create GPU processing threads within each data processing main thread to achieve large-scale data parallel computing; S62, calculating the detection thresholds of the range dimension and the Doppler dimension in parallel by pre-grouping, and constructing a unit average constant false alarm rate detection threshold table; The unit average constant false alarm rate detection threshold is calculated according to the following formula: ; ; Among them, is the total number of training units; is the constant false alarm rate; is the detection threshold coefficient of the average cell constant false alarm rate; is the detection threshold of the average cell constant false alarm rate; is the n power value of the th training unit; S63, eliminating the corresponding units to be detected according to the set blind area range, and performing a numerical comparison between each unit to be detected and the corresponding detection threshold based on the unit average constant false alarm rate detection threshold table. If the power of the unit to be detected is greater than the detection threshold, the unit to be detected is determined to be a preliminary target point. The preliminary target point is then numerically compared with its adjacent units to be detected. If the power value of the preliminary target point is greater than that of the adjacent units to be detected, it is determined to be the preliminary target point. All target points are obtained to form a distance-dimensional target point array. S64, eliminating the portion of the range-dimensional target point array that is zero frequency in the Doppler unit to obtain a processed range-dimensional target point array, performing a numerical comparison on each initial target point in the processed range-dimensional target point array based on the unit average constant false alarm rate detection threshold table, if the power of the initial target point is greater than the detection threshold, then determining that the initial target point is a pre-target point, then performing a numerical comparison on the pre-target point with its adjacent Doppler unit, if the power value of the pre-target point is greater than that of the adjacent Doppler unit, then determining that it is a target point, and obtaining all target points to form the Doppler-dimensional target point array; S65. Confirm the amplitude of the beam where the target point is located. If the amplitude of the beam where the target point is located is the maximum value within the range of adjacent beams, calculate the difference and ratio between the amplitude of the target point and the amplitude of the adjacent larger beam, then load it into the angle detection coefficient matrix and obtain the target point angle according to the following formula: ; ; Among them, is the pointing direction of the beam where the detected target is located; is the corresponding amplitude value of the pointing direction of the beam where the detected target is located; is the pointing direction of the beam with a larger amplitude among adjacent beams; is the corresponding amplitude value of the pointing direction of the beam with a larger amplitude among adjacent beams; , , are the discriminant angle coefficients corresponding to the target; is the sum-difference ratio; is the angle of the target relative to the receiving array surface; Get the angles of all target points in the Doppler target point array and obtain the target detection results; If the amplitude of the beam where the target point is located is not the maximum value within the adjacent beam range, the target point is eliminated, and then all target points are calculated according to the above formula to obtain the target detection result; S66. Based on the dual-base deployment relationship and target detection results transmitted by the front end, the receiving distance and north angle of all target points are calculated according to the following formula to form a target point track: ; ; ; ; ; Wherein, is the angle between the target and the baseline; is the bistatic baseline distance received from the front end and resolved when the system performs target positioning and the north declination angle of the baseline with respect to the receiving array surface; is the north declination angle of the normal of the receiving array surface; is the detected bistatic range difference of the target; is the bistatic range represented by each range cell; is the sampling rate at the receiving end; is the speed of light; is the detected range cell of the target point; is the distance relative to the receiving array surface; is the north declination angle of the target.
7. The real-time signal processing method for non-cooperative bistatic radar based on heterogeneous platforms according to claim 1, wherein In S7, the final target trace array is output according to the following steps: S71. Create a point trace fusion thread PS1 on the CPU side; S72. Input the tracks P1, P2, P3, and P4 output by the four main threads T1-CM1-D1-DM1, T2-CM2-D2-DM2, T3-CM3-D3-DM3, and T4-CM4-D4-DM4 into PS1; S73. Extract the time information of all the tracks in PS1 at the CPU end, and then call the sorting function to sort the tracks in chronological order; S74. Set the grouping criteria based on the distance and angle measurement accuracies of the system. Traverse the sorted tracks, and group the tracks whose distance differences and angle differences both meet the grouping criteria into the same group to obtain track groups; S75. Screen the track groups based on the M / N algorithm, count the number of targets in each group. If the number of targets is greater than the detection times threshold M, fuse all the tracks in the track group into one track by taking the average of the distance and angle, otherwise consider the targets in the track group as false alarms and eliminate them; S76. Obtain all the fused tracks, construct the final target track array and output it.
8. The real-time signal processing method for non-cooperative bistatic radar based on heterogeneous platforms according to claim 7, wherein In S74, the grouping criteria are as follows: Taking the first track of the sorted tracks as the reference track, compare each subsequent track with this track in terms of distance and angle. If the differences between the two are both less than the distance detection accuracy and the angle detection accuracy, it is considered that this track and the reference track belong to the same track group, otherwise this track is used as the reference track for a new group.
9. The real-time signal processing method of a non-cooperative bistatic radar based on a heterogeneous platform according to any one of claims 3, 4 or 6, characterized in that The amount of data is calculated according to the following formula: 。 10. The real-time signal processing method for a non-cooperative bistatic radar based on a heterogeneous platform according to any one of claims 3, 4, or 6, characterized in that The data chunks need to satisfy , ; Among them, when the pulse width of the signal emitted by the currently detected external radiation source is and the pulse repetition interval is the farthest detection distance required by the front end; is the speed of light; is the sampling rate of the receiving end.
Citation Information
Patent Citations
Multi-beam staring radar low-elevation target height measurement method and device and medium
CN113009473A
Bistatic radar signal processing system and method based on CPU and GPU architecture
CN116148793A