A SAR echo simulation method and device

CN122546155APending Publication Date: 2026-08-11SUN YAT SEN UNIVERSITY SHENZHEN +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-05-15
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

CPU串行方法逐点计算回波贡献,面对大场景时耗时巨大,无法满足工程应用对时效性的需求

Benefits of technology

当所述待处理队列非空时,遍历所述待处理队列,并基于所述异步线程池依次从所述待处理队列中取出一个任务单元;获取各个协处理器的任务队列长度,将所述任务队列长度最短的协处理器确定为目标协处理器;将取出的任务单元中的计算参数及目标点数据传输至所述目标协处理器。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122546155A_ABST
    Figure CN122546155A_ABST
Patent Text Reader

Abstract

The application discloses a SAR echo simulation method and device, and relates to the technical field of SAR signal processing.The application divides target point scene data into subbands and point groups based on a first spatial dimension and a second spatial dimension, realizes two-dimensional granularity decomposition of a large-scale simulation task, and pre-generates calculation parameters for each point group and stores the calculation parameters into a to-be-processed queue.Further, the point groups are asynchronously distributed to multiple coprocessors, so that each coprocessor can independently and in parallel process a point group allocated to the coprocessor, thereby fully utilizing multiple computing resources in a heterogeneous platform and improving computing efficiency.In each coprocessor, multiple target point data in a point group are further packed into vectors for parallel calculation, thereby realizing multi-level parallel acceleration from a task level to a data level.Finally, complete echo simulation results are obtained by integrating local simulation data of all point groups, thereby effectively overcoming performance bottlenecks caused by single serial calculation or single-level parallel.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of SAR signal processing technology, and in particular to a SAR echo simulation method and apparatus. Background Technology

[0002] Synthetic Aperture Radar (SAR) is a high-resolution imaging radar widely used in geological disaster monitoring, marine observation, military reconnaissance, and agricultural assessment. SAR echo simulation, by calculating the echo data of the interaction between radar transmitted signals and surface targets, provides a crucial simulated data source for imaging algorithm verification, system parameter design, target recognition algorithm training, and interferometric analysis. High-quality SAR echo simulation can replace some expensive flight experiments, significantly reducing R&D costs and accelerating the development cycle of new SAR systems. With the development of high-resolution, wide-coverage SAR systems, the scale of simulation scenarios has increased dramatically, placing extremely high demands on echo simulation computational capabilities. Efficient and high-precision SAR echo simulation methods have become one of the core foundational tools supporting the development of SAR technology.

[0003] Existing SAR echo simulation methods mainly employ CPU serial computation or parallel acceleration based on general-purpose GPUs. CPU serial methods calculate echo contributions point-by-point, which is extremely time-consuming for large-scale scenarios and cannot meet the timeliness requirements of engineering applications. While GPU-based parallel methods can achieve acceleration, GPU solutions typically rely on specific hardware environments, limiting compatibility with domestic platforms or embedded systems. Furthermore, existing GPU simulation methods often employ single-level parallel strategies, failing to fully utilize the potential of multi-level storage and vectorized computing units in heterogeneous platforms, resulting in insufficient utilization of computing resources and consequently, excessively low SAR echo simulation efficiency. Summary of the Invention

[0004] This invention provides a SAR echo simulation method and apparatus to improve the efficiency of SAR echo simulation on a heterogeneous parallel computing platform.

[0005] To address the aforementioned technical problems, this invention provides a SAR echo simulation method, comprising: The target point scene data to be simulated is obtained, and the target point scene data is divided into several sub-bands based on a preset first spatial dimension. The target points in each sub-band are divided into several point groups based on a preset second spatial dimension, and the target point data of each point group is generated. Based on the preset echo simulation parameters, corresponding calculation parameters are generated for each point group, and the calculation parameters and target point data of each point group are stored in the queue to be processed. Each point group is sequentially retrieved from the queue to be processed, and the calculation parameters and target point data of each point group are asynchronously distributed to several preset coprocessors; In each coprocessor, the target point data of the point group is packaged into a vector based on a preset length, and the echo contribution of each target point in the vector is calculated in parallel based on the calculation parameters. The local simulation data of each point group is calculated based on the echo contribution. The local simulation data of all point groups are integrated to obtain echo simulation data.

[0006] This invention achieves two-dimensional granular decomposition of large-scale simulation tasks by dividing target point scene data into sub-bands and point groups based on a first spatial dimension and a second spatial dimension, respectively, laying the data foundation for subsequent parallel computing. Based on this, computational parameters are pre-generated for each point group and stored in a processing queue, decoupling data preparation from the computational task and avoiding the overhead of repetitive parameter calculations during the computation process. The point groups are then asynchronously distributed to multiple coprocessors, enabling each coprocessor to independently and concurrently process its assigned point group, thereby fully utilizing the multiple computing resources in a heterogeneous platform and improving computational efficiency. Within each coprocessor, multiple target point data within a point group are further packaged into vectors for parallel computation, achieving multi-level parallel acceleration from the task level to the data level. Finally, by integrating the local simulation data of all point groups, a complete echo simulation result is obtained, ensuring data consistency and integrity, thus effectively overcoming the performance bottlenecks caused by single serial computation or single-level parallelism.

[0007] Furthermore, the process of dividing the target point scene data into several sub-bands based on a preset first spatial dimension, and dividing the target points within each sub-band into several point groups based on a preset second spatial dimension, generates target point data for each point group, including: The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; the target point data contains a preset number of target points.

[0008] This invention specifies the first spatial dimension as the range direction and the second spatial dimension as the azimuth direction, and limits the target point data of the point group to include a preset number of target points. By clarifying the two most critical spatial dimensions in SAR echo simulation, the task partitioning is highly compatible with the physical characteristics of the SAR echo signal, thus ensuring good data locality and memory access continuity in subsequent calculations for the partitioned subbands and point groups. Simultaneously, by limiting the number of target points in each point group to a preset fixed value, the data size of each point group is consistent when vectorized and packaged within the coprocessor, facilitating unified vector width utilization and computational pipeline optimization.

[0009] Furthermore, the target point scene data is divided into several sub-bands according to the distance direction, and the target points within each sub-band are divided into several point groups according to the azimuth direction, generating target point data for each point group; the target point data includes a preset number of target points, including: The coordinate range of the target point scene data in the distance direction is obtained, and the coordinate range is divided into several continuous distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band; Obtain the distance coordinates of each target point in the target point scene data, and extract all target points falling into the same distance sub-interval based on the distance coordinates to obtain the target point set corresponding to the sub-band of the distance sub-interval; Obtain the azimuth coordinate order of all target points in each sub-band, and divide the target points into several point groups based on the coordinate order and a preset number to generate target point data.

[0010] This invention achieves regular spatial discretization of the distance direction by acquiring the coordinate range of the target point scene data in the distance direction and dividing it into continuous distance sub-intervals based on a preset sub-band width. This ensures that the target point set corresponding to each sub-band is naturally continuous in space, which is beneficial for subsequent data reading and caching by sub-band. Furthermore, by extracting target points falling into the same sub-interval based on the distance direction coordinates to form the target point set corresponding to the sub-band, the accuracy and completeness of data classification are guaranteed. On this basis, by acquiring the azimuth coordinate order of the target points in each sub-band and dividing the points into groups based on a preset number, the target points in each group are also continuously arranged in the azimuth direction, thus ensuring the spatial proximity of target points within the group. Through two consecutive division operations based on spatial coordinate order, the final generated point groups not only have a regular data scale but also have excellent spatial locality, which is beneficial for the subsequent coprocessor to reduce data loading latency and improve cache hit rate during vectorized parallel computing, thereby improving the overall simulation efficiency.

[0011] Furthermore, the step of generating corresponding calculation parameters for each point group based on preset echo simulation parameters, and storing the calculation parameters of each point group and the target point data into a queue to be processed includes: Traverse each point group to obtain the spatial location information of each target point within the current point group; Based on the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase and range-direction time delay corresponding to each target point are calculated to obtain the individual calculation parameters of each target point; The calculation parameters of the current point group are obtained by integrating the individual calculation parameters of all target points within the current point group. The calculation parameters of the current point group and the target point data are associated and packaged into a task unit, and the task unit is stored in the queue to be processed in sequence.

[0012] This invention ensures the comprehensiveness and accuracy of parameter generation by traversing each point group and obtaining the spatial location information of each target point within it. Based on this, and using the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase, and range-direction time delay corresponding to each target point are calculated. These three parameters are the most crucial and computationally intensive parts of the SAR echo contribution calculation. These computationally intensive preprocessing tasks are pre-completed and integrated into the point group calculation parameters by the host computer before the coprocessor executes the actual echo calculation, avoiding the repetitive calculation of the same geometric relationships within each computational unit of each coprocessor. The individual calculation parameters of all target points within the same group are integrated into the point group calculation parameters and associated with the target point data, packaged into task units, and stored in the processing queue, achieving "one-time calculation, multiple uses" of the calculation parameters and a high degree of cohesion between data and parameters. By separating the preprocessing calculations from the core calculations in the echo simulation, computational redundancy within the coprocessor is effectively reduced, improving the rationality of task division between the host and coprocessor sides in heterogeneous platforms, thereby enhancing the overall simulation efficiency.

[0013] Furthermore, the step of sequentially retrieving each point group from the queue to be processed and asynchronously distributing the calculation parameters and target point data of each point group to several preset coprocessors includes: Create a task queue for each preset coprocessor and start a preset asynchronous thread pool; When the queue to be processed is not empty, the queue to be processed is traversed, and a task unit is taken out from the queue to be processed in turn based on the asynchronous thread pool; the task queue length of each coprocessor is obtained, and the coprocessor with the shortest task queue length is determined as the target coprocessor; the calculation parameters and target point data in the taken task unit are transmitted to the target coprocessor.

[0014] This invention constructs a multi-producer, multi-consumer task scheduling framework by establishing an independent task queue for each coprocessor and starting an asynchronous thread pool. When the queue is not empty, the asynchronous thread pool retrieves task units from the queue and dynamically obtains the length of each coprocessor's task queue, selecting the coprocessor with the shortest task queue as the target coprocessor for distribution. This dynamic load balancing mechanism can perceive the task backlog of each coprocessor in real time, prioritizing the allocation of new tasks to the coprocessor with the lightest load, thereby effectively avoiding the "weakest link" effect caused by differences in computing power or uneven task computation among different coprocessors. Compared to static task allocation, this allows each coprocessor to complete its assigned tasks almost synchronously, reducing overall waiting time and significantly improving the resource utilization and overall throughput of multiple coprocessors in a heterogeneous parallel system, thus enhancing the overall efficiency of SAR echo simulation.

[0015] Furthermore, in each coprocessor, the target point data of the point group is packaged into a vector based on a preset length, the echo contribution of each target point in the vector is calculated in parallel, and the local simulation data of each point group is calculated based on the echo contribution, including: Take a task unit from the task queue of the coprocessor and obtain the point group calculation parameters and point group target point data in the task unit; Based on a preset length, the preset number of target point data are sequentially extracted from the target point data of the point group to generate a vector data block; Based on the multiple processing units inside the coprocessor and the calculation parameters, the echo contribution value of each target point in the vector data block is calculated simultaneously. The echo contribution values ​​of all target points within the point group are summed to obtain the local simulation data of the point group.

[0016] This invention clarifies the input source of the coprocessor by retrieving task units from the coprocessor's task queue to obtain point group calculation parameters and target point data. Based on this, a preset number of target point data points are sequentially extracted from the target point data of the point group to generate vector data blocks, achieving batch vectorization and packaging of target points within the point group. Multiple processing units within the coprocessor simultaneously calculate the echo contribution value of each target point in the same vector data block, fully leveraging the coprocessor's single-instruction multiple-data stream parallel capability. This allows multiple target points that would otherwise require sequential calculation to be completed in parallel within the same clock cycle. Finally, by accumulating the echo contribution values ​​of all target points within the point group to obtain the local simulation data of the point group, the reduction of the point group's calculation results is completed. This technique further refines the parallel granularity within the coprocessor from the thread level to the vector level, enabling a single coprocessor to process the echo calculation of multiple target points simultaneously, thereby significantly increasing the actual computational throughput of each coprocessor.

[0017] Secondly, the present invention provides a SAR echo simulation device, comprising: a point group division module, a parameter calculation module, an asynchronous distribution module, a local calculation module, and an integration module; The point group division module is used to acquire the target point scene data to be simulated, divide the target point scene data into several sub-bands based on a preset first spatial dimension, and divide the target points in each sub-band into several point groups based on a preset second spatial dimension, thereby generating target point data for each point group. The parameter calculation module is used to generate corresponding calculation parameters for each point group based on preset echo simulation parameters, and store the calculation parameters of each point group and the target point data into the queue to be processed. The asynchronous distribution module is used to sequentially retrieve each point group from the queue to be processed, and asynchronously distribute the calculation parameters and target point data of each point group to several preset coprocessors. The local calculation module is used in each coprocessor to package the target point data of the point group into a vector based on a preset length, calculate the echo contribution of each target point in the vector in parallel based on the calculation parameters, and calculate the local simulation data of each point group based on the echo contribution. The integration module is used to integrate the local simulation data of all point groups to obtain echo simulation data.

[0018] Furthermore, the point group division module is used to divide the target point scene data into several sub-bands based on a preset first spatial dimension, and to divide the target points within each sub-band into several point groups based on a preset second spatial dimension, generating target point data for each point group, including: The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; the target point data contains a preset number of target points.

[0019] Furthermore, the point group division module is used to divide the target point scene data into several sub-bands according to the distance direction, and divide the target points in each sub-band into several point groups according to the azimuth direction, generating target point data for each point group; the target point data includes a preset number of target points, including: The coordinate range of the target point scene data in the distance direction is obtained, and the coordinate range is divided into several continuous distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band; Obtain the distance coordinates of each target point in the target point scene data, and extract all target points falling into the same distance sub-interval based on the distance coordinates to obtain the target point set corresponding to the sub-band of the distance sub-interval; Obtain the azimuth coordinate order of all target points in each sub-band, and divide the target points into several point groups based on the coordinate order and a preset number to generate target point data.

[0020] Furthermore, the parameter calculation module is used to generate corresponding calculation parameters for each point group based on preset echo simulation parameters, and to store the calculation parameters of each point group and the target point data into a queue to be processed, including: Traverse each point group to obtain the spatial location information of each target point within the current point group; Based on the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase and range-direction time delay corresponding to each target point are calculated to obtain the individual calculation parameters of each target point; The calculation parameters of the current point group are obtained by integrating the individual calculation parameters of all target points within the current point group. The calculation parameters of the current point group and the target point data are associated and packaged into a task unit, and the task unit is stored in the queue to be processed in sequence. Attached Figure Description

[0021] Figure 1 A schematic flowchart of a SAR echo simulation method provided in an embodiment of the present invention; Figure 2 A schematic diagram of a SAR satellite scanning area provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of task allocation for a SAR echo simulation method provided in an embodiment of the present invention; Figure 4This is a schematic diagram of parallel task allocation for a SAR echo simulation method provided in an embodiment of the present invention; Figure 5 This is a schematic diagram of a SAR echo simulation device provided in an embodiment of the present invention. Detailed Implementation

[0022] The specific embodiments of the present invention will be described in further detail below with reference to the accompanying drawings and examples. The following examples are for illustrative purposes only and are not intended to limit the scope of the invention.

[0023] The terms "first" and "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such processes, methods, products, or apparatus.

[0024] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0025] Example 1 See Figure 1 , Figure 1 This is a flowchart illustrating a SAR echo simulation method provided by an embodiment of the present invention. The embodiment of the present invention provides a SAR echo simulation method, including steps 101 to 105, as detailed below: Step 101: Obtain the target point scene data to be simulated, divide the target point scene data into several sub-bands based on the preset first spatial dimension, and divide the target points in each sub-band into several point groups based on the preset second spatial dimension, and generate the target point data of each point group. Step 102: Generate corresponding calculation parameters for each point group based on the preset echo simulation parameters, and store the calculation parameters and target point data of each point group into the queue to be processed. Step 103: Take out each point group sequentially from the queue to be processed, and asynchronously distribute the calculation parameters and target point data of each point group to several preset coprocessors; Step 104: In each coprocessor, the target point data of the point group is packaged into a vector based on a preset length, and the echo contribution of each target point in the vector is calculated in parallel based on the calculation parameters. The local simulation data of each point group is calculated based on the echo contribution. Step 105: Integrate the local simulation data of all point groups to obtain echo simulation data.

[0026] In this embodiment, the target point scene data to be simulated is first acquired, which includes the spatial coordinates and scattering coefficient of each target point. The target point scene data is then divided into multiple continuous sub-bands according to the radar's range direction, i.e., the first spatial dimension, with each sub-band corresponding to a range interval. Next, the target points within each sub-band are divided into multiple point groups according to the radar's azimuth direction, i.e., the second spatial dimension, with each point group containing a fixed number of target points, thereby generating target point data for each point group.

[0027] Subsequently, based on preset echo simulation parameters, including radar carrier frequency, bandwidth, pulse width, sampling rate, and satellite orbit parameters, corresponding calculation parameters are calculated for each point group. These calculation parameters include the instantaneous slant range, Doppler phase, and range-direction time delay of each target point. The calculation parameters of each point group and its target point data are then stored together in the queue to be processed.

[0028] Next, each point group is sequentially retrieved from the processing queue. The computational parameters and target point data for each point group are dynamically distributed to multiple idle coprocessors via an asynchronous thread pool. Each coprocessor has its own independent task queue. Within each coprocessor, the data of multiple target points within the received point group are packaged into a vector data block, using the width of its vector register as a preset length. Multiple processing units within the coprocessor then calculate the echo contribution of each target point in this vector in parallel, i.e., simultaneously calculating the echo amplitude and phase of multiple target points. The calculation results for each target point within the same vector data block are accumulated, and the packaging and calculation are repeated until all target points in the point group have been processed, thus obtaining the local simulation data for that point group.

[0029] Finally, the local simulation data of each point group returned by all coprocessors are spliced ​​and integrated according to the original spatial order of their respective sub-bands and point groups to obtain complete echo simulation data.

[0030] In this embodiment, by dividing the target point scene data into sub-bands and point groups based on the first and second spatial dimensions respectively, a two-dimensional granular decomposition of the large-scale simulation task is achieved, laying the data foundation for subsequent parallel computing. Based on this, computational parameters are pre-generated for each point group and stored in a processing queue, decoupling data preparation from the computational task and avoiding the overhead of repetitive parameter calculations during the computation process. Then, the point groups are asynchronously distributed to multiple coprocessors, enabling each coprocessor to independently and in parallel process its assigned point group, thereby fully utilizing the multiple computing resources in the heterogeneous platform and improving computational efficiency. Within each coprocessor, the multiple target point data within the point group are further packaged into vectors for parallel computation, achieving multi-level parallel acceleration from the task level to the data level. Finally, by integrating the local simulation data of all point groups, a complete echo simulation result is obtained, ensuring data consistency and integrity, thus effectively overcoming the performance bottlenecks caused by single serial computation or single-level parallelism.

[0031] In this embodiment, the process of dividing the target point scene data into several sub-bands based on a preset first spatial dimension, and dividing the target points within each sub-band into several point groups based on a preset second spatial dimension, to generate target point data for each point group, includes: The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; the target point data contains a preset number of target points.

[0032] In this embodiment, the overall coordinate range of the target point scene in the distance direction is first determined. This coordinate range is then divided into multiple continuous and non-overlapping distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band. Next, all target points are traversed, and each target point is assigned to its corresponding sub-band based on its distance coordinate, thus obtaining the set of target points contained in each sub-band. For each sub-band, the azimuth coordinates of all target points within that sub-band are further obtained, and the target points are sorted in ascending order of their azimuth coordinates. Subsequently, the sorted target points are grouped sequentially according to a preset fixed number, with each group containing that preset number of target points, forming a point group. If the last group has fewer than the preset number, it is processed according to the actual number. Through this process, the target points within each point group are arranged continuously in the azimuth direction, and the number of target points in each point group is unified to a preset value, thereby generating regularized point groups and their contained target point data, providing a data regularization basis for subsequent vectorized parallel computation.

[0033] In this embodiment, in synthetic aperture radar, range and azimuth are two orthogonal dimensions describing the spatial relationship between the radar and the target. The range direction, also known as the fast time domain or line-of-sight direction, refers to the propagation direction of the radar's transmitted pulse, i.e., the direction of the line connecting the radar antenna phase center to the ground target point. The resolution in this direction is determined by the bandwidth of the transmitted signal, obtained by pulse compression of the echo signal. In the echo data matrix, the range direction corresponds to the sampling points within different range gates received for each pulse. The azimuth direction, also known as the slow time domain or radar platform motion direction, refers to the motion direction of the radar platform (such as a satellite or aircraft) along its flight trajectory. The resolution in this direction is achieved through synthetic aperture technology, i.e., coherent processing of echo signals received at different times during the platform's motion. In the echo data matrix, the azimuth direction corresponds to the sequence of different pulse transmission times.

[0034] In this embodiment, the first spatial dimension is specified as the range direction, and the second spatial dimension is specified as the azimuth direction. The target point data for each point group is limited to a predetermined number of target points. By clearly defining the two most critical spatial dimensions in SAR echo simulation, the task partitioning is highly compatible with the physical characteristics of the SAR echo signal, ensuring good data locality and memory access continuity for the partitioned sub-bands and point groups in subsequent calculations. Furthermore, by limiting the number of target points in each point group to a predetermined fixed value, the data size of each point group remains consistent during vectorization and packaging within the coprocessor, facilitating unified vector width utilization and computational pipeline optimization.

[0035] In this embodiment, the target point scene data is divided into several sub-bands according to the distance direction, and the target points within each sub-band are divided into several point groups according to the azimuth direction, generating target point data for each point group; the target point data includes a preset number of target points, including: The coordinate range of the target point scene data in the distance direction is obtained, and the coordinate range is divided into several continuous distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band; Obtain the distance coordinates of each target point in the target point scene data, and extract all target points falling into the same distance sub-interval based on the distance coordinates to obtain the target point set corresponding to the sub-band of the distance sub-interval; Obtain the azimuth coordinate order of all target points in each sub-band, and divide the target points into several point groups based on the coordinate order and a preset number to generate target point data.

[0036] In this embodiment, all target point scene data is read, and the coordinates of each target point in the distance direction are extracted. The minimum and maximum coordinates of the entire scene in the distance direction are determined, thereby obtaining the total coordinate range in the distance direction. According to the preset sub-band width, the total coordinate range is divided into multiple continuous and non-overlapping distance sub-intervals. For example, starting from the minimum coordinate, an interval is divided every other sub-band width, and each interval is a sub-band.

[0037] In this embodiment, all target points are traversed. For each target point, its distance coordinate is obtained, and it is determined which distance sub-interval the coordinate falls into. The target point is then assigned to the corresponding sub-zone, thus forming a set of target points for each sub-zone. For each sub-zone, the azimuth coordinates of all target points within that sub-zone are obtained, and these target points are sorted in ascending order of their azimuth coordinates.

[0038] In this embodiment, starting from the first sorted target point, a predetermined number of consecutive target points are grouped into a point group, generating multiple point groups sequentially. Each point group contains a predetermined number of target points, and these target points maintain a continuous order in the azimuth direction. If the total number of target points in a sub-band is not an integer multiple of the predetermined number, the last point group contains the remaining target points. Through the above process, target point data corresponding to each point group is finally generated, including the spatial coordinates, scattering coefficients, and other information of each target point, preparing for subsequent parallel computing.

[0039] In this embodiment, by acquiring the coordinate range of the target point scene data in the distance direction and dividing it into continuous distance sub-intervals based on a preset sub-band width, regular discretization of the distance direction space is achieved. This ensures that the target point set corresponding to each sub-band is naturally continuous in space, which is beneficial for subsequent data reading and caching by sub-band. Furthermore, by extracting target points falling into the same sub-interval based on the distance direction coordinates to form the target point set corresponding to the sub-band, the accuracy and completeness of data classification are guaranteed. On this basis, by acquiring the azimuth coordinate order of the target points in each sub-band and dividing the point groups sequentially based on a preset number, the target points in each point group are also continuously arranged in the azimuth direction, thus ensuring the spatial proximity of the target points within the point group. Through two consecutive division operations based on spatial coordinate order, the final generated point groups not only have a regular data scale but also have excellent spatial locality, which is beneficial for the subsequent coprocessor to reduce data loading latency and improve cache hit rate during vectorized parallel computing, thereby improving the overall simulation efficiency.

[0040] In this embodiment, the step of generating corresponding calculation parameters for each point group based on preset echo simulation parameters, and storing the calculation parameters of each point group and the target point data into a queue to be processed includes: Traverse each point group to obtain the spatial location information of each target point within the current point group; Based on the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase and range-direction time delay corresponding to each target point are calculated to obtain the individual calculation parameters of each target point; The calculation parameters of the current point group are obtained by integrating the individual calculation parameters of all target points within the current point group. The calculation parameters of the current point group and the target point data are associated and packaged into a task unit, and the task unit is stored in the queue to be processed in sequence.

[0041] In this embodiment, after the point group division is completed, the calculation parameters are pre-generated for each point group.

[0042] In this embodiment, all point groups are first traversed. For the current point group, the spatial position information of each target point within that group, including its three-dimensional coordinates, is extracted from the target point data. Then, based on preset echo simulation parameters, including the radar platform's orbital position and velocity, signal carrier frequency and wavelength, frequency modulation slope and pulse width of the transmitted pulse, and sampling rate, the instantaneous slant range of each target point is calculated, i.e., the instantaneous straight-line distance from the radar antenna phase center to the target point, combined with the spatial position information of each target point. Furthermore, the Doppler phase and range-direction time delay are calculated based on the instantaneous slant range. The Doppler phase reflects the phase modulation of the target point caused by the relative motion of the radar platform, and the range-direction time delay determines the time delay position of the echo signal in the range direction. The instantaneous slant range, Doppler phase, and range-direction time delay of each target point are collectively used as the individual calculation parameters for that target point. After all the individual calculation parameters for all target points within the current point group have been calculated, these individual calculation parameters are integrated according to the order of the target points to form the overall calculation parameters for the point group. Finally, the overall calculated parameters of the point group are correlated with the original target point data of the point group, including the scattering coefficient of each target point, and packaged into an independent task unit. This task unit is then stored sequentially in the processing queue, awaiting subsequent asynchronous distribution processing. In this way, the geometric and phase calculations required for each point group are pre-completed on the host side, avoiding the repetition of the same geometric calculations on the coprocessor side, thereby reducing the computational burden on the coprocessor and improving the overall simulation efficiency.

[0043] As a specific example of an embodiment of the present invention, taking the strip mode of a spaceborne synthetic aperture radar as an example, such as... Figure 2 As shown, the satellite travels at a speed of During flight, due to the non-negligible curvature of the Earth on the spacecraft platform, the speed at which the beam travels on the ground... With satellite flight speed The geometric relationship is determined by the following formula: (1) Wherein, is the satellite's flight altitude. The shortest distance from the center of the scene to the satellite's flight path. The beam incident angle, Let R be the Earth's radius and H be the satellite's altitude. For any scattering point P(x,r) within the scene, its instantaneous slant range with the radar is R(t;x,r), and the radar's accumulation time with it is... The instantaneous slant range R(t;x,r) is the instantaneous straight-line distance from the radar antenna phase center to the ground scattering point P(x,r) at time t.

[0044] The transmitted signal is a linear frequency modulated signal with a frequency modulation slope of [missing information]. =B / T, where B is the signal bandwidth, T is the signal duration, and the total number of sampling points. , The sampling rate is used. Utilizing the "stop-go-stop" operating mode of spaceborne SAR, fast-time distance ambiguity is ignored, and a slow-time sampling rate is adopted. Indicates R as A single discrete echo signal can be represented as: (2) in, It is the amplification factor of the radar receiver. It is the scattering coefficient of the target point. It is the signal carrier frequency. It is the wavelength corresponding to the carrier frequency. Indicates the distance between the satellite and the target point. When the beam center time... When it is 0, satisfy: (3) in, and Indicates in The three-dimensional coordinates of the satellite at any given time. , , This represents the coordinates of the target point. The echo of a two-dimensional surface target is the superposition of the echoes from all scattered elements: (4) In the formula, m and n are the position indices of the scattering element in the azimuth and range directions, respectively. , These represent the number of scattering elements in the azimuth and range directions, respectively. The slant range of the radar antenna phase center to the scene scattering element is determined by the star-ground space geometry modeling; The scattering cross section (RCS) of the scattering element obtained from electromagnetic modeling is usually ignored because the line of sight of the scattering element changes very little at different azimuth positions. The weighting coefficients, determined by the radar equations, include factors such as transmit power, antenna pattern, feeder loss, and propagation attenuation. Based on formula (4), it can be seen that the phase of the SAR echo signal has two main components: one is the time delay term due to distance. One is the Doppler term caused by the relative motion between the platform and the target. In other words, the simulation of phase mainly involves simulating time delay and Doppler shift. Therefore, based on the characteristics of impulse signals and convolution, the echo expression can be rewritten as: (5) in, Represents convolution. To transmit a signal.

[0045] To achieve efficient large-scene echo simulation, this embodiment employs the following parallel processing method. First, the target point scene data to be simulated is acquired, including the three-dimensional coordinates and scattering cross-section of each target point. The target point scene data is divided into several sub-bands along the range direction (i.e., the radar line-of-sight direction), with each sub-band corresponding to a continuous range sub-interval. Then, along the azimuth direction (i.e., the radar platform's movement direction), the target points within each sub-band are divided into several point groups, each containing a fixed number of target points, generating target point data for each point group. Please refer to... Figure 3 The scene segmentation between nodes follows these principles: (6) Then, based on preset echo simulation parameters, including satellite orbital position and velocity, carrier frequency and wavelength, frequency modulation slope and pulse width, sampling rate, receiver amplification factor, and antenna pattern weighting coefficients, calculation parameters are generated for each point group. For each target point within the point group, the instantaneous slant range is calculated using the satellite's slow-time coordinates. This leads to the Doppler phase. and distance to time delay These individual calculation parameters are integrated into point group calculation parameters. The calculation parameters of each point group and the target point data are packaged into task units and stored sequentially in the processing queue.

[0046] In this embodiment, by traversing each point group and obtaining the spatial location information of each target point within it, the comprehensiveness and accuracy of parameter generation are ensured. Based on this, using the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase, and range-direction time delay corresponding to each target point are calculated. These three parameters are the most crucial and computationally intensive parts of the SAR echo contribution calculation. These computationally intensive preprocessing tasks are pre-completed and integrated into the point group calculation parameters by the host before the coprocessor executes the actual echo calculation, avoiding the repetitive calculation of the same geometric relationships within each computational unit of each coprocessor. The individual calculation parameters of all target points within the same group are integrated into the point group calculation parameters and associated with the target point data, packaged into task units, and stored in the processing queue, achieving "one-time calculation, multiple uses" of the calculation parameters and a high degree of cohesion between data and parameters. By separating the preprocessing calculations from the core calculations in the echo simulation, computational redundancy within the coprocessor is effectively reduced, improving the rationality of task division between the host and coprocessor sides in the heterogeneous platform, thereby enhancing the overall simulation efficiency.

[0047] In this embodiment, the step of sequentially retrieving each point group from the queue to be processed and asynchronously distributing the calculation parameters and target point data of each point group to several preset coprocessors includes: Create a task queue for each preset coprocessor and start a preset asynchronous thread pool; When the queue to be processed is not empty, the queue to be processed is traversed, and a task unit is taken out from the queue to be processed in turn based on the asynchronous thread pool; the task queue length of each coprocessor is obtained, and the coprocessor with the shortest task queue length is determined as the target coprocessor; the calculation parameters and target point data in the taken task unit are transmitted to the target coprocessor.

[0048] In this embodiment, after the calculation parameters and target point data of each point group are packaged into task units and stored in the processing queue, an asynchronous distribution operation is performed. Specifically, firstly, an independent task queue is established for each pre-defined coprocessor in the system to cache the task units to be executed by that coprocessor. Simultaneously, an asynchronous thread pool is started, which is responsible for retrieving task units from the processing queue and dynamically distributing them to each coprocessor. When the processing queue is not empty, the asynchronous thread pool traverses the queue, retrieving one task unit from the head of the queue in sequence. For the currently retrieved task unit, the thread pool obtains the current length of the task queues of all coprocessors, i.e., the number of unprocessed task units for each coprocessor. The thread pool selects the coprocessor with the shortest task queue length and designates it as the target coprocessor. This selection mechanism can perceive the load status of each coprocessor in real time and prioritize assigning new tasks to the coprocessor with the least current task backlog. Subsequently, the thread pool transmits the calculation parameters and target point data of the task unit to the end of the target coprocessor's task queue through system shared memory or other high-speed data channels, and optionally sends a trigger signal to the coprocessor to start processing. The thread pool then proceeds to process the next task unit without waiting for the previous task to complete. In this way, multiple task units are asynchronously and load-balancedly distributed to each coprocessor, achieving efficient parallel scheduling.

[0049] In this embodiment, specifically, an independent task queue is first established for each preset coprocessor, i.e., each DSP cluster, and a preset asynchronous thread pool is started. This asynchronous thread pool runs on the CPU of the local node.

[0050] When the queue to be processed is not empty, the asynchronous thread pool traverses the queue, retrieving one task unit from the head of the queue in turn. For the currently retrieved task unit, the thread pool obtains the current length of the task queue for each DSP cluster, i.e., the cumulative number of unprocessed task units for each DSP cluster. The thread pool selects the DSP cluster with the shortest task queue length as the target coprocessor to achieve load balancing.

[0051] Subsequently, the thread pool transfers the computational parameters and target point data from the retrieved task unit to the task queue of the target DSP cluster via shared memory, and sends a trigger signal to the DSP cluster to initiate processing of the task unit. The thread pool then continues processing the next task unit without waiting for the previous task to complete. In this way, the asynchronous thread pool on the CPU dynamically distributes task units to various DSP clusters in an asynchronous, non-blocking manner, allowing each DSP cluster to independently consume task units from its task queue based on its own computing power. This achieves adaptive load balancing and efficient parallel scheduling among multiple DSP clusters.

[0052] In this embodiment, a multi-producer, multi-consumer task scheduling framework is constructed by establishing an independent task queue for each coprocessor and starting an asynchronous thread pool. When the queue to be processed is not empty, the asynchronous thread pool retrieves task units from the queue and dynamically obtains the length of the task queue for each coprocessor, selecting the coprocessor with the shortest task queue as the target coprocessor for distribution. This dynamic load balancing mechanism can perceive the task backlog of each coprocessor in real time and prioritize the allocation of new tasks to the coprocessor with the lightest current load, thereby effectively avoiding the "weakest link" effect caused by differences in computing power or uneven task computation among different coprocessors. Compared with the static task allocation method, this allows each coprocessor to complete its assigned tasks almost synchronously, reducing the overall waiting time and significantly improving the resource utilization and overall throughput of multiple coprocessors in the heterogeneous parallel system, thereby improving the overall efficiency of SAR echo simulation.

[0053] In this embodiment, in each coprocessor, the target point data of the point group is packaged into a vector based on a preset length, the echo contribution of each target point in the vector is calculated in parallel, and the local simulation data of each point group is calculated based on the echo contribution, including: Take a task unit from the task queue of the coprocessor and obtain the point group calculation parameters and point group target point data in the task unit; Based on a preset length, the preset number of target point data are sequentially extracted from the target point data of the point group to generate a vector data block; Based on the multiple processing units inside the coprocessor and the calculation parameters, the echo contribution value of each target point in the vector data block is calculated simultaneously. The echo contribution values ​​of all target points within the point group are summed to obtain the local simulation data of the point group.

[0054] In this embodiment, vectorized parallel computation is performed in each coprocessor, i.e., each DSP cluster. First, the DSP cluster retrieves a task unit from its own task queue, obtaining the point group calculation parameters and target point data carried in that task unit. Then, the DSP cluster sequentially retrieves data for multiple target points corresponding to the preset vectorization length from the target point data of the point group, for example, loading the spatial coordinates and scattering coefficients of sixteen target points into the DSP's vector register to generate a vector data block. Utilizing multiple processing units within the DSP cluster, i.e., the eight computational cores within the cluster, the echo contribution value of each target point in the vector data block is calculated simultaneously based on the instantaneous slant range, Doppler phase, and range-time delay in the calculation parameters; that is, the echo simulation kernel function is executed in parallel. After the echo contribution value of each target point is calculated, these echo contribution values ​​are accumulated within the DSP cluster. The above steps of packaging, parallel computation, and accumulation are repeated until all target points in the current point group are processed, finally obtaining the local simulation data of the point group. The local simulation data is then fed back into the node's shared memory for subsequent Fourier transforms and file writing.

[0055] In this embodiment, after all coprocessors have completed their calculations, each coprocessor sends the local simulation data corresponding to each point group it generates back to the host's memory. Each local simulation data carries the identifier of its sub-band and the sequential number of the point group within that sub-band. The host first categorizes all local simulation data according to the sub-band identifier. For multiple point groups of local data belonging to the same sub-band, they are then concatenated sequentially according to the sequential number of the point groups to form the complete sub-band echo data in the range direction. Then, according to the original arrangement order of each sub-band in the range direction, the echo data of all sub-bands are sequentially combined to obtain the complete time-domain echo simulation data. To obtain frequency-domain echo data for subsequent imaging processing or storage, the host performs range-direction Fourier transform and azimuth-direction Fourier transform on the complete time-domain echo data to convert the signal to the two-dimensional frequency domain. After the transformation is completed, the frequency-domain echo data is written to a disk file in the order of range first and then azimuth, with each data point stored in complex form, thus obtaining the final SAR echo simulation data file for subsequent imaging algorithm verification or system parameter analysis.

[0056] As a specific example of an embodiment of the present invention, taking the strip mode of a spaceborne synthetic aperture radar as an example, within a node, scene point data based on thread pools and DSP clusters adopts a multi-level partitioning strategy. Assume that a node contains four DSP clusters, and each DSP cluster contains eight computing cores. Let the slow-time echo data corresponding to the nth azimuth block be... This data is obtained by summing the calculation results of four DSP clusters, and their division relationship is as follows: (7) in, Indicates the sequence number of the DSP cluster. For the first Partial echo data calculated by a DSP cluster.

[0057] Within each DSP cluster, computational tasks are further distributed across eight computational cores within the cluster. Let the first core be... The sub-result calculated by the p-th core within a DSP cluster is: The calculation result of the entire DSP cluster is obtained by summing the results of the eight cores: (8) in, This represents the DSP core number. Each core further iterates and calculates the target point group assigned to it. Let the number of target points assigned to the current core be... Then, the echo contribution of each target point within the core is calculated according to the SAR echo formula, and the results are accumulated to obtain the sub-result of the core: (9) Among them, subscript This indicates the position of the nth group under the current orientation. Within the DSP cluster, the first The target point parameters processed by each computing core The weighting coefficients are determined by the radar equations. The scattering cross section of the target point. This is the instantaneous slant distance. For frequency modulation slope, To save time, For slow time, λ is the wavelength, and c is the speed of light.

[0058] Through the above three-level division, the echo simulation task for the entire scene is first grouped and assigned to four DSP clusters according to azimuth, then eight cores are assigned to each DSP cluster, and finally, the echo contribution of multiple target points is calculated in parallel within each core using a vectorized method. The calculation results of each layer are accumulated step by step to obtain the complete echo simulation data. Figure 4 As shown, the parallel task allocation within the node enables multi-level, fine-grained parallel computing from the node level to the cluster level and then to the kernel level, effectively improving the efficiency of SAR echo simulation.

[0059] In this embodiment, the input source of the coprocessor is clarified by retrieving task units from the coprocessor task queue to obtain the point group calculation parameters and target point data. Based on this, a preset number of target point data are sequentially extracted from the target point data of the point group based on a preset length to generate vector data blocks, realizing the batch vectorization and packaging of target points within the point group. By utilizing multiple processing units within the coprocessor to simultaneously calculate the echo contribution value of each target point in the same vector data block, the single-instruction multiple-data stream parallel capability of the coprocessor is fully utilized, enabling multiple target points that originally required sequential calculation to be completed in parallel within the same clock cycle. Finally, by accumulating the echo contribution values ​​of all target points within the point group to obtain the local simulation data of the point group, the reduction of the point group calculation results is completed. This technique further refines the parallel granularity within the coprocessor from the thread level to the vector level, enabling a single coprocessor to process the echo calculation of multiple target points simultaneously, thereby significantly increasing the actual computational throughput of each coprocessor.

[0060] Please refer to Figure 5 , Figure 5 A schematic diagram of a SAR echo simulation device provided in an embodiment of the present invention includes: a point group division module 501, a parameter calculation module 502, an asynchronous distribution module 503, a local calculation module 504, and an integration module 505; The point group division module 501 is used to acquire the target point scene data to be simulated, divide the target point scene data into several sub-bands based on a preset first spatial dimension, and divide the target points in each sub-band into several point groups based on a preset second spatial dimension, thereby generating target point data for each point group. The parameter calculation module 502 is used to generate corresponding calculation parameters for each point group based on preset echo simulation parameters, and store the calculation parameters of each point group and the target point data into the queue to be processed. The asynchronous distribution module 503 is used to sequentially retrieve each point group from the queue to be processed, and asynchronously distribute the calculation parameters and target point data of each point group to several preset coprocessors. The local calculation module 504 is used in each coprocessor to package the target point data of the point group into a vector based on a preset length, calculate the echo contribution of each target point in the vector in parallel based on the calculation parameters, and calculate the local simulation data of each point group based on the echo contribution. The integration module 505 is used to integrate the local simulation data of all point groups to obtain echo simulation data.

[0061] In this embodiment, the point group division module is used to divide the target point scene data into several sub-bands based on a preset first spatial dimension, and to divide the target points within each sub-band into several point groups based on a preset second spatial dimension, generating target point data for each point group, including: The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; the target point data contains a preset number of target points.

[0062] In this embodiment, the point group division module is used to divide the target point scene data into several sub-bands according to the distance direction, and divide the target points in each sub-band into several point groups according to the azimuth direction, generating target point data for each point group; the target point data includes a preset number of target points, including: The coordinate range of the target point scene data in the distance direction is obtained, and the coordinate range is divided into several continuous distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band; Obtain the distance coordinates of each target point in the target point scene data, and extract all target points falling into the same distance sub-interval based on the distance coordinates to obtain the target point set corresponding to the sub-band of the distance sub-interval; Obtain the azimuth coordinate order of all target points in each sub-band, and divide the target points into several point groups based on the coordinate order and a preset number to generate target point data.

[0063] In this embodiment, the parameter calculation module is used to generate corresponding calculation parameters for each point group based on preset echo simulation parameters, and to store the calculation parameters of each point group and the target point data into a queue to be processed, including: Traverse each point group to obtain the spatial location information of each target point within the current point group; Based on the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase and range-direction time delay corresponding to each target point are calculated to obtain the individual calculation parameters of each target point; The calculation parameters of the current point group are obtained by integrating the individual calculation parameters of all target points within the current point group. The calculation parameters of the current point group and the target point data are associated and packaged into a task unit, and the task unit is stored in the queue to be processed in sequence.

[0064] In this embodiment, the asynchronous distribution module is used to sequentially retrieve each point group from the queue to be processed, and asynchronously distribute the calculation parameters and target point data of each point group to several preset coprocessors, including: Create a task queue for each preset coprocessor and start a preset asynchronous thread pool; When the queue to be processed is not empty, the queue to be processed is traversed, and a task unit is taken out from the queue to be processed in turn based on the asynchronous thread pool; the task queue length of each coprocessor is obtained, and the coprocessor with the shortest task queue length is determined as the target coprocessor; the calculation parameters and target point data in the taken task unit are transmitted to the target coprocessor.

[0065] In this embodiment, the local computing module is used in each coprocessor to package the target point data of the point group into a vector based on a preset length, calculate the echo contribution of each target point in the vector in parallel, and calculate the local simulation data of each point group based on the echo contribution, including: Take a task unit from the task queue of the coprocessor and obtain the point group calculation parameters and point group target point data in the task unit; Based on a preset length, the preset number of target point data are sequentially extracted from the target point data of the point group to generate a vector data block; Based on the multiple processing units inside the coprocessor and the calculation parameters, the echo contribution value of each target point in the vector data block is calculated simultaneously. The echo contribution values ​​of all target points within the point group are summed to obtain the local simulation data of the point group.

[0066] The present invention provides a computer program product, including a computer program or instructions, which, when executed by a communication device, implement the method described therein.

[0067] In this embodiment of the invention, a SAR echo simulation device is also provided, including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor. When the processor executes the computer program, it implements the SAR echo simulation method described above.

[0068] In this embodiment of the invention, a computer-readable storage medium is also provided, which includes a stored computer program, wherein the computer program controls the device where the computer-readable storage medium is located to execute the above-described SAR echo simulation method when it is running.

[0069] For example, a computer program can be divided into one or more modules, one or more of which are stored in memory and executed by a processor to carry out the present invention. One or more modules can be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program in a SAR echo simulation device.

[0070] The SAR echo simulation device can be a desktop computer, laptop, handheld computer, or cloud server, etc. The SAR echo simulation device may include, but is not limited to, a processor, memory, and display. Those skilled in the art will understand that the above components are merely examples of SAR echo simulation devices and do not constitute a limitation on the SAR echo simulation device. It may include more or fewer components, or combinations of certain components, or different components. For example, the SAR echo simulation device may also include input / output devices, network access devices, buses, etc.

[0071] The processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor. The processor is the control center of the SAR echo simulation equipment, connecting all parts of the equipment via various interfaces and lines.

[0072] The memory can be used to store computer programs and / or modules. The processor implements various functions of the SAR echo simulation device by running or executing the computer programs and / or modules stored in the memory, and by calling the data stored in the memory. The memory can mainly include a program storage area and a data storage area. The program storage area can store the operating system, at least one application program required for a function (such as sound playback function, text conversion function, etc.), etc.; the data storage area can store data created according to the use of the mobile phone (such as audio data, text message data, etc.). In addition, the memory can include high-speed random access memory, and can also include non-volatile memory, such as hard disk, RAM, plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, at least one disk storage device, flash memory device, or other volatile solid-state storage device.

[0073] In this invention, if the module based on SAR echo simulation is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. Those skilled in the art can understand and implement this invention without any inventive effort.

[0074] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the scope of protection of the present invention. In particular, it should be noted that any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention for those skilled in the art.

Claims

1. A method of simulating a SAR echo, characterized in that include: The target point scene data to be simulated is obtained, and the target point scene data is divided into several sub-bands based on a preset first spatial dimension. The target points in each sub-band are divided into several point groups based on a preset second spatial dimension, and the target point data of each point group is generated. Based on the preset echo simulation parameters, corresponding calculation parameters are generated for each point group, and the calculation parameters and target point data of each point group are stored in the queue to be processed. Each point group is sequentially retrieved from the queue to be processed, and the calculation parameters and target point data of each point group are asynchronously distributed to several preset coprocessors; In each coprocessor, the target point data of the point group is packaged into a vector based on a preset length, and the echo contribution of each target point in the vector is calculated in parallel based on the calculation parameters. The local simulation data of each point group is then calculated based on the echo contribution. The local simulation data of all point groups are integrated to obtain echo simulation data.

2. The SAR echo simulation method of claim 1, wherein, The process involves dividing the target point scene data into several sub-bands based on a preset first spatial dimension, and further dividing the target points within each sub-band into several point groups based on a preset second spatial dimension, generating target point data for each point group, including: The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; the target point data contains a preset number of target points.

3. A SAR echo simulation method as claimed in claim 2, characterized in that, The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; The target point data includes a preset number of target points, including: Obtain the coordinate range of the target point scene data in the distance direction, and divide the coordinate range into several continuous distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band; Obtain the distance coordinates of each target point in the target point scene data, and extract all target points falling into the same distance sub-interval based on the distance coordinates to obtain the set of target points corresponding to the sub-band of the distance sub-interval; Obtain the azimuth coordinate order of all target points in each sub-band, and divide the target points into several point groups based on the coordinate order and a preset number to generate target point data.

4. A SAR echo simulation method as claimed in claim 3, characterized in that, The calculation parameters for each point group are generated based on preset echo simulation parameters, and the calculation parameters and target point data of each point group are stored in a queue to be processed, including: Traverse each point group to obtain the spatial location information of each target point within the current point group; Based on the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase and range-direction time delay corresponding to each target point are calculated to obtain the individual calculation parameters of each target point; The calculation parameters of the current point group are obtained by integrating the individual calculation parameters of all target points within the current point group. The calculation parameters of the current point group and the target point data are associated and packaged into a task unit, and the task unit is stored in the queue to be processed in sequence.

5. A SAR echo simulation method as claimed in claim 4, characterized in that, The step of sequentially retrieving each point group from the queue to be processed and asynchronously distributing the calculation parameters and target point data of each point group to several preset coprocessors includes: Create a task queue for each preset coprocessor and start a preset asynchronous thread pool; When the queue to be processed is not empty, the queue to be processed is traversed, and a task unit is taken out from the queue to be processed in turn based on the asynchronous thread pool; the task queue length of each coprocessor is obtained, and the coprocessor with the shortest task queue length is determined as the target coprocessor; the calculation parameters and target point data in the taken task unit are transmitted to the target coprocessor.

6. A SAR echo simulation method as claimed in claim 5, characterized in that, In each coprocessor, the target point data of the point group is packaged into a vector based on a preset length, the echo contribution of each target point in the vector is calculated in parallel, and the local simulation data of each point group is calculated based on the echo contribution, including: Take a task unit from the task queue of the coprocessor and obtain the point group calculation parameters and point group target point data in the task unit; Based on a preset length, the preset number of target point data are sequentially extracted from the target point data of the point group to generate a vector data block; Based on the multiple processing units inside the coprocessor and the calculation parameters, the echo contribution value of each target point in the vector data block is calculated simultaneously. The echo contribution values ​​of all target points within the point group are summed to obtain the local simulation data of the point group.

7. A SAR echo simulation apparatus, characterized by, include: The module includes a point group partitioning module, a parameter calculation module, an asynchronous distribution module, a local calculation module, and an integration module. The point group division module is used to acquire the target point scene data to be simulated, divide the target point scene data into several sub-bands based on a preset first spatial dimension, and divide the target points in each sub-band into several point groups based on a preset second spatial dimension, thereby generating target point data for each point group. The parameter calculation module is used to generate corresponding calculation parameters for each point group based on preset echo simulation parameters, and store the calculation parameters of each point group and the target point data into the queue to be processed. The asynchronous distribution module is used to sequentially retrieve each point group from the queue to be processed, and asynchronously distribute the calculation parameters and target point data of each point group to several preset coprocessors. The local calculation module is used in each coprocessor to package the target point data of the point group into a vector based on a preset length, calculate the echo contribution of each target point in the vector in parallel based on the calculation parameters, and calculate the local simulation data of each point group based on the echo contribution. The integration module is used to integrate the local simulation data of all point groups to obtain echo simulation data.

8. A SAR echo simulation apparatus as claimed in claim 7, characterized in that The point group division module is used to divide the target point scene data into several sub-bands based on a preset first spatial dimension, and to divide the target points within each sub-band into several point groups based on a preset second spatial dimension, generating target point data for each point group, including: The target point scene data is divided into several sub-bands according to the distance direction, and the target points in each sub-band are divided into several point groups according to the azimuth direction to generate target point data for each point group; the target point data contains a preset number of target points.

9. A SAR echo simulation apparatus as claimed in claim 8, characterized in that The point group division module is used to divide the target point scene data into several sub-bands according to the distance direction, and divide the target points in each sub-band into several point groups according to the azimuth direction, thereby generating target point data for each point group. The target point data includes a preset number of target points, including: Obtain the coordinate range of the target point scene data in the distance direction, and divide the coordinate range into several continuous distance sub-intervals based on a preset sub-band width, with each distance sub-interval corresponding to a sub-band; Obtain the distance coordinates of each target point in the target point scene data, and extract all target points falling into the same distance sub-interval based on the distance coordinates to obtain the set of target points corresponding to the sub-band of the distance sub-interval; Obtain the azimuth coordinate order of all target points in each sub-band, and divide the target points into several point groups based on the coordinate order and a preset number to generate target point data.

10. A SAR echo simulation apparatus as claimed in claim 9, characterized in that The parameter calculation module is used to generate corresponding calculation parameters for each point group based on preset echo simulation parameters, and to store the calculation parameters of each point group and the target point data into a queue to be processed, including: Traverse each point group to obtain the spatial location information of each target point within the current point group; Based on the echo simulation parameters and the spatial location information of each target point, the instantaneous slant range, Doppler phase and range-direction time delay corresponding to each target point are calculated to obtain the individual calculation parameters of each target point; The calculation parameters of the current point group are obtained by integrating the individual calculation parameters of all target points within the current point group. The calculation parameters of the current point group and the target point data are associated and packaged into a task unit, and the task unit is stored in the queue to be processed in sequence.