Soft and hard heterogeneous data processing system and method for atmospheric sounding lidar
By using a hardware-software heterogeneous data processing system, combined with the accelerator consistency port (ACP) and a single-cycle fusion architecture, the problems of noise and bus delay introduced by analog filtering networks in existing technologies are solved, and high-frequency transient calculation and high spatial resolution three-dimensional reconstruction are realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HEFEI INSTITUTE OF PHYSICAL SCIENCE CHINESE ACADEMY OF SCIENCES
- Filing Date
- 2026-04-29
- Publication Date
- 2026-07-07
AI Technical Summary
In existing high-frequency scanning micropulse lidar systems, analog filtering networks are prone to introducing spatial coupling noise, modular sequential execution modes increase data flow bus occupancy and system latency, and the ARM core serial scalar computing architecture processor pipeline is prone to computational waiting, making it difficult to meet the requirements of microsecond-level high-frequency transient solutions.
A heterogeneous hardware and software data processing system is adopted, which utilizes the accelerator consistency port ACP and a single-cycle fusion architecture. Through the collaborative work of the PL and PS ends, data is directly stored in the internal cache and fused in a register-level single cycle, avoiding external DDR main memory access. The computation process is optimized by combining virtual space filters and a deterministic nonlinear solution engine.
It reduces bus occupancy and system latency in data flow, improves processing speed, achieves microsecond-level high-frequency transient calculation, eliminates nonlinear phase distortion caused by analog filters, and ensures high spatial resolution 3D reconstruction.
Smart Images

Figure CN122111888B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of embedded architecture for atmospheric remote sensing and scientific instruments, and in particular to a hardware-software heterogeneous data processing system and method for atmospheric sounding lidar. Background Technology
[0002] In applications such as high-frequency scanning micro-pulse lidar, vehicle-mounted mobile monitoring, and UAV-borne 3D aerosol detection systems, the high-speed 3D scanning characteristics of the system require the underlying data processing architecture to have extremely high temporal and spatial resolution.
[0003] Chinese invention patent application number 202510010813.7, published on April 4, 2025, describes a method and system for data acquisition and processing of atmospheric sounding lidar based on ZYNQ. In the hardware front-end, analog filtering networks (such as LC Bessel filters) are used for signal conditioning, or discrete pulses are output using photon counting mode. In the processing architecture, after data preprocessing is completed at the programmable logic (PL) end, cross-domain data transfer is performed using the AXI bus (e.g., stored in external double data rate DDR main memory via DMA, or used on-chip memory OCM for inter-core interaction within the processing system PS end). Subsequently, at the processing system end (PS end), scalar computation and modular sequential execution mode (e.g., calling the underlying functions in the order of denoising, smoothing, square correction, and inversion) are used to complete secondary processing and inversion calculation.
[0004] The above system still faces the following technical challenges when dealing with high-frequency transient solutions:
[0005] 1. In complex electromagnetic environments, conditioning links based on analog filter networks are prone to introducing spatial coupling noise, and the group delay characteristics of analog filters can bring engineering challenges to phase alignment between channels when multiple channels are running concurrently.
[0006] 2. When processing high dynamic range echo data, the modular sequential execution paradigm requires frequent access to the bus and memory for reading and writing as data flows between processing stages. This objectively increases the bus occupancy rate and system latency of data flow, making it difficult to completely avoid the memory wall limitation under the von Neumann architecture.
[0007] 3. When executing the physical equations for lidar inversion using a serial scalar computing architecture based on the ARM core, the processor pipeline is prone to computational delays due to the large number of floating-point divisions and transcendental function operations (such as exponential calculations). The single-profile processing latency of the aforementioned embedded scalar processor platform is typically in the millisecond range. When the inversion processing speed does not match the physical scan frame rate, it may limit the spatial resolution in dynamic scan mode, making it difficult to fully meet the engineering requirements of microsecond-level high-frequency transient solutions. Summary of the Invention
[0008] Based on this, it is necessary to provide a hardware-software heterogeneous data processing system and method for atmospheric detection lidar to address the above-mentioned technical problems. The system relies on the accelerator coherence port (ACP) and a single-cycle fusion architecture to reduce the bus occupancy rate and system latency of data flow. It mainly solves the problem that frequent access to the bus and memory for reading and writing increases the bus occupancy rate and system latency of data flow.
[0009] In a first aspect, this application provides a hardware-software heterogeneous data processing system for atmospheric sounding lidar, comprising:
[0010] At the PL end, the collected lidar signal data is received and preliminarily processed to generate target data;
[0011] The PS end, connected to the PL end via ACP, includes an internal cache and at least one processing core, with a virtual space filter configured within the processing core. Target data is stored in the internal cache via ACP. The processing core is configured to schedule the PL end to perform preliminary processing on the digital signal, read the target data from the internal cache, and run the virtual space filter to filter the target data. The virtual space filter performs register-level single-loop fusion of each independent algorithm node that needs to be called serially. Within the single loop fusion, the calculation of each independent algorithm is completed sequentially, and all intermediate data resides in the register file.
[0012] Background noise constants are pre-stored in registers, and distance squared correction weights are pre-stored in internal caches; the register-level single-loop fusion process includes:
[0013] Read the target data from the internal cache, push the target data into the vector register, convert it into single-precision floating-point format, and then store it in the vector register.
[0014] In the internal arithmetic logic unit of the processing core, background noise is subtracted from the target data based on the background noise constant of the profile; at the same time, the distance squared correction weight is preloaded into the register, and after the background noise subtraction calculation is completed, distance correction is performed based on the distance squared correction weight.
[0015] Adaptive convolution processing is performed on the target data after distance correction, and the result of adaptive convolution processing is stored in the internal cache.
[0016] In one embodiment, when the PS (Power Supply) contains multiple processing cores, the computing resources of the PS are functionally divided as follows:
[0017] The first processing core schedules the PL terminal to perform preliminary processing on the digital signal and generate target data. After the target data is stored in the internal buffer via ACP, the second processing core is notified of the data readiness via an interrupt signal.
[0018] The second processing core responds to interrupt signals, reads target data from the internal cache, and runs a virtual space filter to filter the target data.
[0019] In one embodiment, a data acquisition module for acquiring lidar signal data includes:
[0020] Photodetector;
[0021] The minimalist analog front-end module uses a passive broadband matching network to convert the photoelectric signal output by the photodetector into current / voltage, and provides physical gain via an RF broadband amplifier.
[0022] The analog-to-digital converter performs analog-to-digital conversion on the signal output from the simplified analog front-end module to generate target acquisition lidar signal data.
[0023] In one embodiment, the processing kernel is further configured with a deterministic nonlinear solution engine, including:
[0024] The deterministic division pipeline module is used to handle floating-point division operations in the inversion formula;
[0025] The transcendental function heterogeneous mapping module is used to handle transcendental function operations in inversion formulas.
[0026] Secondly, this application also provides a software-hardware heterogeneous data processing method for atmospheric sounding lidar, including:
[0027] The target data is directly stored in the internal cache via ACP;
[0028] Read the target data from the internal cache, push the target data into the vector register, convert it into single-precision floating-point format, and then store it in the vector register.
[0029] In the internal arithmetic logic unit of the processing core, background noise is subtracted from the target data based on the background noise constant of the profile; at the same time, the distance squared correction weight is preloaded into the register, and after the background noise subtraction calculation is completed, distance correction is performed based on the distance squared correction weight; the background noise constant is pre-stored in the register, and the distance squared correction weight is pre-stored in the internal cache.
[0030] Adaptive convolution processing is performed on the target data after distance correction, and the result of adaptive convolution processing is stored in the internal cache.
[0031] In one embodiment, adaptive convolution processing is performed on the distance-corrected target data, including:
[0032] When the detection distance is less than the preset distance threshold, narrow-window single-precision floating-point convolution is used to adaptively convolve the distance squared correction data.
[0033] When the detection distance is greater than the preset distance threshold, the distance squared correction data is adaptively convolutionally processed using wide-window throughput smoothing.
[0034] In one embodiment, running a virtual spatial filter to perform adaptive convolution processing on the distance-squared corrected data includes:
[0035] When the detection distance is less than the preset distance threshold, narrow-window single-precision floating-point convolution is used to adaptively convolve the distance squared correction data.
[0036] When the detection distance is greater than the preset distance threshold, the distance squared correction data is adaptively convolutionally processed using wide-window throughput smoothing.
[0037] In one embodiment, adaptive convolution processing of the distance-squared corrected data further includes:
[0038] Within a set transition interval near a preset distance threshold, the linear smooth weighted fusion of the narrow window and wide window output results is performed using vector multiply-add instructions.
[0039] In one embodiment, the method further includes:
[0040] When processing floating-point division operations in the inversion formula, obtain the 8-bit floating-point reciprocal estimate of the divisor;
[0041] The 8-bit floating-point reciprocal of the divisor is improved by double Newton-Raphson iteration to generate a 24-bit single-precision reciprocal;
[0042] Multiply the dividend by the reciprocal of the 24-bit single-precision number.
[0043] In one embodiment, the method further includes:
[0044] When dealing with transcendental function operations in the inversion formula, for a fixed atmospheric molecular Rayleigh scattering baseline, a pre-computed lookup table based on memory pointer index mapping is constructed, and the pre-computed lookup table is read during the calculation.
[0045] For the aerosol attenuation integral term that varies dynamically with space, a Minimax polynomial approximation algorithm is constructed for instruction-level concurrent solution.
[0046] This application employs the aforementioned heterogeneous hardware and software data processing system and method for atmospheric sounding lidar, which has the following beneficial effects:
[0047] 1. Breaking through the memory wall limitation caused by traditional step-by-step serial execution, relying on the accelerator coherence port ACP and single-loop fusion architecture, the target data bypasses the external DDR main memory and is directly stored in the internal cache. In the single-loop fusion, the data residing in the internal cache completes all core physical transformations on the extremely short loop between the processor's arithmetic logic unit and registers after one vector loading. This achieves zero penetration of the algorithm's intermediate process to the external main memory, releases the massive bandwidth of the AXI bus, reduces the bus occupancy rate and system latency of data flow, and enables heterogeneous architectures (such as floating-point equation solving in the PL-side fixed-point linear accumulation module) to achieve high throughput and zero bottlenecks at the system level.
[0048] 2. For complex inversion formulas, a floating-point divider is forcibly reconstructed using low-level deterministic vector instructions (reciprocal estimation and pipelined multiplication), and a pre-computed LUT is introduced to avoid transcendental function calls. This microarchitecture-level nonlinear solution optimization compresses the traditional millisecond-level single-profile inversion time to the microsecond level, eliminating the need to pause at the step angle during high-speed scanning, thus eliminating motion artifacts on the mobile platform and ensuring high-fidelity 3D reconstruction of the radar system for the preset high spatial resolution aerosol field.
[0049] 3. Abandoning the traditional complex active analog filter network, it adopts a simple passive matching and virtual spatial filter in synergy. It uses data-level parallel pure digital sliding convolution calculation in the spatial filter to replace the analog low-pass filter, and strongly suppresses high-frequency thermal noise. It eliminates nonlinear phase distortion and temperature drift caused by high-order analog filters, and achieves strict channel consistency and high-fidelity echo signal reconstruction. Attached Figure Description
[0050] Figure 1 This is a schematic diagram of the overall structure of a hardware-software heterogeneous data processing system for an atmospheric detection lidar in one embodiment.
[0051] Figure 2 This is a schematic diagram comparing modular sequential execution flow and loop-fused data flow in one embodiment; wherein, Figure 2 (a) in the diagram is a schematic diagram of a modular sequential execution flow; Figure 2 (b) in the diagram is a schematic diagram of the cyclic fusion data stream;
[0052] Figure 3 This is a flowchart illustrating the adaptive filtering mechanism in one embodiment;
[0053] Figure 4 This is a flowchart illustrating a floating-point division operation in one embodiment;
[0054] Figure 5 This is a flowchart illustrating the operation of transcendental functions in one embodiment. Detailed Implementation
[0055] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0056] Definitions:
[0057] The PL side, or Programmable Logic, is the FPGA part, where users can program specific logic functions according to their needs.
[0058] PS, or Processing System, is the processing subsystem in a chip based on the ARM architecture.
[0059] ACP, or Accelerator Coherence Port, also known as the AXI_ACP interface, is an interface defined under the ARM multi-core architecture.
[0060] ALU, Arithmetic Logic Unit, is a fundamental component of a processor (CPU) responsible for performing various arithmetic operations (such as addition and subtraction) and logical operations (such as AND, OR, and NOT).
[0061] Firstly, such as Figure 1 and Figure 2 As shown, this application provides a hardware-software heterogeneous data processing system for atmospheric sounding lidar, comprising: a PL terminal, which receives and performs preliminary processing on the acquired lidar signal data to generate target data; a PS terminal, which is connected to the PL terminal via an ACP, including an internal cache and at least one processing core, wherein a virtual space filter is configured within the processing core; the target data is stored in the internal cache via the ACP; the processing core is configured to schedule the PL terminal to perform preliminary processing on the digital signal, read the target data from the internal cache, and run the virtual space filter to filter the target data; the virtual space filter performs register-level single-loop fusion of each independent algorithm node that needs to be called serially, and completes the calculation of each independent algorithm sequentially within the single loop fusion, and all intermediate data resides in the register file.
[0062] In one embodiment, the background noise constant is pre-stored in a register, and the distance squared correction weights are pre-stored in an internal cache. The register-level single-loop fusion process includes: reading the target data from the internal cache, pushing the target data into a vector register and converting it into a single-precision floating-point format before storing it in the vector register; in the arithmetic logic unit inside the processing core, background noise is subtracted from the target data based on the background noise constant of the profile; at the same time, the distance squared correction weights are pre-loaded into the register, and after the background noise subtraction calculation is completed, distance correction is performed based on the distance squared correction weights; adaptive convolution is performed on the distance-corrected target data, and the result of the adaptive convolution is stored in the internal cache.
[0063] When processing high dynamic range echo data, the modular sequential execution paradigm requires frequent access to the bus and memory for reading and writing as data flows between processing stages. This objectively increases the bus occupancy and system latency of data flow, making it difficult to completely avoid the memory wall limitation under the von Neumann architecture.
[0064] To address the DDR main memory bandwidth and access latency bottlenecks encountered by the high-frequency scanning data stream, refer to Figure 2 The system provides a physical equation fusion computation flow based on the accelerator coherence port (ACP) and zero-penetration of external DDR main memory, namely a single-loop fusion architecture. Zero-penetration means that during the computation process, data does not pass through external DDR main memory but remains in the on-chip cache system, thus avoiding memory bandwidth bottlenecks.
[0065] Specifically, the programmable logic (PL) terminal and the processing system (PS) terminal exchange high-speed data through the accelerator coherence port (ACP). The high-frequency fixed-point accumulation data output by the PL terminal bypasses the external DDR main memory and, utilizing the hardware coherence mechanism of the ACP, is directly pushed into and resides in the L2 cache of the PS terminal, maintaining an on-chip accessible state until CPU processing, thereby constructing an on-chip closed-loop data path.
[0066] The physical equations for atmospheric aerosol detection exhibit significant data-level parallelism in the discretization solution stage for spatial distance databases. Based on this, when performing data inversion at the corresponding spatial resolution, the PS (Power Positioning System) uses its internal virtual spatial filter to perform register-level single-loop fusion of the independent algorithm nodes that would otherwise require serial calls. Specifically, within a single loop, data loading, format conversion, background noise subtraction, distance squared correction, and convolution calculation are performed sequentially, with all intermediate data residing in the register file, thus avoiding multiple memory accesses. This register-level fusion is essentially a microarchitectural-level dataflow optimization, creating a closed arithmetic execution loop in the computation process.
[0067] In one embodiment, the target data is read from the internal cache using the internal processing core of the PS terminal, and a virtual spatial filter is run to filter the target data. This includes: pushing fixed-point linearly accumulated data into a vector register and converting it into single-precision floating-point format before storing it in the vector register; performing background noise subtraction and distance square correction on the single-precision floating-point format target data according to the background noise constant of the profile and the distance square correction weights to generate distance square correction data; the background noise constant of the profile is pre-stored in the vector register; the distance square correction weights are pre-stored in the internal cache; and the virtual spatial filter is run to perform adaptive convolution processing on the distance square correction data.
[0068] The specific microarchitecture data flow execution process is as follows:
[0069] Outside the circulation loop, the background noise constant of the profile is pre-set. Resides in register q1. And uses the pre-calculated distance squared correction weight lookup table. Arranged in line alignment so that it resides in the L1 / L2 cache before processing begins.
[0070] Within a single loop, the `vld1q_u32` vector load instruction first pulls four unsigned 32-bit fixed-point accumulated data residing in the L2 cache into the vector register via the L1 data cache. This data is then seamlessly converted to single-precision floating-point (FP32) format and stored in register `q0`. Subsequently, leveraging the microarchitecture's dual-issue feature (i.e., the processor simultaneously dispatches two independent instructions to the ALU and load / store units within a single clock cycle), the ALU performs background noise subtraction while the independent load / store units pre-load the distance squared correction weights corresponding to the current distance into register `q2`. Once the denoising calculation is complete, the denoising result is dynamically multiplied by the distance squared coefficients in register `q2`, followed by adaptive convolution. Background subtraction and distance squared correction are then fused into a single vector operation as follows:
[0071]
[0072] in, The signal vector is smoothed by sliding window convolution. For broadcast background scalar, For pre-compiling the distance squared correction lookup table, ⊙ represents the element-wise Hadamard product.
[0073] Subsequently, within a pipeline cycle without cache misses, the data resides entirely in the closed loop between the ALU and the register file: First, background noise is subtracted using the vsubq_f32(q0,q1) instruction; during this arithmetic execution (utilizing the microarchitecture's dual-issue feature), the four distance squared correction weights corresponding to the current spatial distance, residing in the L1 cache, are preloaded into the q2 register; once the denoising calculation is complete, the denoising result is dynamically multiplied with the weights in the q2 register using the vmulq_f32 instruction to perform the distance squared coefficients; finally, seamless shifting of adjacent spatial data is achieved by combining vector extraction instructions (such as vextq_f32), pushing the data into a sliding window, and performing vmlaq_f32 (vector multiply-add) adaptive convolution processing.
[0074] After the entire multi-step physical transformation is completely completed within the register file, a single call to the `vst1q_f32` instruction writes the data back to the main memory L1 cache. This embodiment completely eliminates the overhead of multiple DDR memory read / write operations and data type conversions caused by intermediate data transfers between algorithm nodes during the computation process, bringing the system memory bandwidth utilization close to its theoretical limit.
[0075] The PL terminal provided in this application includes a fixed-point linear accumulation module. After receiving the digital signal output from the analog-to-digital converter, the PL terminal uses the fixed-point linear accumulation module to perform a linear accumulation operation on the fixed-point data, generating fixed-point linearly accumulated data. The above process is the process by which the PL terminal receives the digital signal output from the analog-to-digital converter and performs preliminary processing on the digital signal data to generate the target data.
[0076] To support microsecond-level high-frequency transient computation, the system main controller is based on the Zynq-7000 series or a system-on-a-chip with an equivalent heterogeneous architecture. The system in this application includes at least one processing core at the processing system's PS (Power Supply) end. During execution, this at least one processing core is driven by bare-metal hardware logic events, avoiding uncontrollable delays caused by context switching in the monolithic kernel operating system. The processing core is configured to schedule the fixed-point linear accumulation module at the programmable logic (PL) end, synchronize the interrupt pipeline, and fully schedule and configure its internal cache to run virtual space filters, using underlying digital computing power to accurately compensate for the lack of filtering capabilities in the simplified analog front-end.
[0077] In one embodiment, when the PS terminal contains multiple processing cores, the computing resources of the PS terminal are divided into the following functions: the first processing core schedules the PL terminal to perform preliminary processing on the digital signal and generate target data; after the target data is stored in the internal cache through ACP, it notifies the second processing core that the data is ready through an interrupt signal; the second processing core responds to the interrupt signal, reads the target data from the internal cache, and runs a virtual space filter to filter the target data.
[0078] In one embodiment, the internal cache includes an L1 cache and an L2 cache, both of which are automatically managed by hardware. Fixed-point linear accumulation data is written and allocated to the L2 cache from the PL end via the ACP interface. A pre-calculated distance-squared correction weight lookup table is arranged row-aligned to reside in the L1 / L2 cache. The PS-side processing core directly reads the data from the internal cache and executes a virtual space filter to filter the fixed-point linear accumulation data.
[0079] To achieve the ultimate throughput of microsecond-level deterministic computation, the aforementioned processing system's PS (Power Processor) employs a bare-metal asymmetric multiprocessor multicore architecture. Specifically, when the PS contains multiple processing cores, the computing resources within the system are physically divided into a first processing core (e.g., CPU0) and a second processing core (e.g., CPU1). The first processing core is dedicated to scheduling data transfer at the PL (Power Processor) and synchronizing the interrupt pipeline through strictly managed memory barrier instructions (DMB / DSB). This means scheduling the PL to perform preliminary processing on the digital signal to generate target data. After the target data is stored in the internal cache via ACP (Automatic Processing Buffer), an interrupt signal is sent to the second processing core to notify it that the data is ready. The second processing core, as an independent high-performance coprocessor, exclusively configures its private L1 cache and reduces pollution of the shared L2 cache through physical isolation between the control plane and the data plane. It runs the aforementioned virtual space filter and deterministic nonlinear solution engine, thereby achieving physical isolation between the control plane and the data plane and completely eliminating microarchitectural pipeline stalls caused by interrupt responses.
[0080] In one embodiment, such as Figure 1 As shown, the data acquisition module for acquiring lidar signal data includes: a photodetector; a simplified analog front-end module, which uses a passive broadband matching network to perform current / voltage conversion on the photoelectric signal output by the photodetector and provides physical gain through an RF broadband amplifier; and an analog-to-digital converter, which performs analog-to-digital conversion on the signal output by the simplified analog front-end module to generate target acquisition lidar signal data.
[0081] In the analog front-end, the system eliminates active transimpedance amplifiers and analog low-pass filter networks, which are prone to introducing nonlinear group delay and temperature drift. It should be noted that nonlinear group delay refers to the inconsistent propagation delay of different frequency components as they pass through the analog filter link, resulting in distortion of the echo pulse waveform; while temperature drift causes the device gain and frequency response to shift with environmental changes, thus affecting the long-term measurement stability of the system. By eliminating these components, strict channel consistency and high-fidelity echo signal reconstruction are achieved.
[0082] The minimalist analog front-end module includes a 50-ohm passive broadband matching network and an RF broadband low-noise amplifier. The 50-ohm passive broadband matching network is used to achieve impedance matching and perform current / voltage (I / V) conversion over a wide frequency band. It does not rely on active amplification devices, so it does not introduce additional nonlinearity. The low-noise amplifier is used to provide stable physical gain without reducing the signal-to-noise ratio as much as possible, thereby ensuring the effective dynamic range of the subsequent analog-to-digital conversion.
[0083] In practical engineering implementation, the weak current signal (typically with a dynamic range of 1µA to 1mA) output by the photodetector (such as an avalanche photodiode for the near-infrared band, or a photomultiplier tube for the ultraviolet / visible band) undergoes I / V conversion via the aforementioned 50-ohm passive broadband matching network, resulting in an original voltage signal amplitude in the range of 50µV to 50mV. This original voltage signal is then boosted to the linear quantization range of the analog-to-digital converter (ADC) by the amplifier providing a fixed physical gain (e.g., 20dB), and subsequently fed into the ADC. Considering the spatial discretization characteristics of the atmospheric lidar equations, the sampling rate of the ADC is dynamically configured according to the system's preset spatial resolution requirements. The linear quantization range refers to the effective input range of the ADC while ensuring controllable quantization error and nonlinear distortion.
[0084] In one embodiment of the present invention, taking into account the spatial discretization characteristics of the atmospheric sounding lidar equation, the sampling rate of the aforementioned analog-to-digital converter (ADC) is dynamically configured according to the system's preset spatial resolution requirements. It should be noted that there is a definite correspondence between lidar range resolution and time sampling interval; therefore, the sampling rate directly determines the spatial resolution capability. In one embodiment of the present invention, when the preset spatial resolution requirement is 0.0075 km, according to the Nyquist sampling theorem, the corresponding base sampling rate of the ADC is configured to be 20 MSPS. Further, when the ADC is configured with a higher oversampling rate of 40 MSPS, the programmable logic unit (PL) performs hardware-level accumulation of two adjacent spatial distance data sets, strictly aligning to the 0.0075 km physical spatial resolution through digital decimation, thereby further improving the signal-to-noise ratio (SNR) without changing the spatial resolution. This digital decimation is essentially an equivalent integration operation performed in the digital domain, which suppresses random noise by increasing the equivalent observation time.
[0085] In one embodiment, such as Figure 1 As shown, the processing core is also equipped with a deterministic nonlinear solution engine, including: a deterministic division pipeline module for handling floating-point division operations in the inversion formula; and a transcendental function heterogeneous mapping module for handling transcendental function operations in the inversion formula.
[0086] In this embodiment, when the processing system PS contains multiple processing cores, the deterministic nonlinear solution engine is configured on the second processing core.
[0087] Secondly, this application also provides a hardware-software heterogeneous data processing method for atmospheric detection lidar, comprising: directly storing target data into an internal cache via ACP; reading target data from the internal cache, pushing the target data into a vector register and converting it into single-precision floating-point format before storing it in the vector register; in the arithmetic logic unit inside the processing core, performing background noise subtraction on the target data based on the background noise constant of the profile; simultaneously loading the squared correction weights into a register in advance, and performing range correction processing based on the squared correction weights after the background noise subtraction calculation is completed; the background noise constant is pre-stored in the register, and the range squared correction weights are pre-stored in the internal cache; performing adaptive convolution processing on the target data after range correction processing, and storing the result of the adaptive convolution processing in the internal cache.
[0088] In one embodiment, running a virtual spatial filter to perform adaptive convolution processing on the distance squared correction data includes: when the detection distance is less than a preset distance threshold, using narrow-window single-precision floating-point convolution to perform adaptive convolution processing on the distance squared correction data; and when the detection distance is greater than the preset distance threshold, using wide-window throughput smoothing to perform adaptive convolution processing on the distance squared correction data.
[0089] In one embodiment, adaptive convolution processing of distance squared correction data further includes: performing linear smooth weighted fusion of narrow window and wide window output results using vector multiply-add instructions within a set transition interval near a preset distance threshold.
[0090] like Figure 3 As shown, this application provides an adaptive spatial filtering mechanism based on physical perception. The signal-to-noise ratio of the backscattered signal from an atmospheric sounding lidar varies with spatial distance by 1 / r. 2 The physical phenomenon of attenuation superimposed on exponential attenuation necessitates an adaptive heterogeneous backoff strategy implemented at the PS (Power Station) of the processing system. The system receives discrete radar echo data and spatial range parameters. It is configured with a first preset distance threshold that is dynamically adjustable according to the detection mission. (For example ): When the detection distance At this time, due to the high signal-to-noise ratio, the virtual space filter adaptively employs narrow-window single-precision floating-point (FP32) convolution to preserve the transient structural details of cloud edges with minimal spatial averaging cost; when the detection distance... At this time, a wide-window approach is used to perform deterministic low-latency throughput smoothing to strongly suppress high-frequency thermal noise. Furthermore, to avoid artificial step artifacts introduced by abrupt changes in the filtering window, in the aforementioned... Within the nearby transition zone, i.e. At that time, the virtual space filter uses vector multiply-add instructions to perform linear smooth weighted fusion of the narrow window and wide window output results (i.e., vmlaq_f32 AlphaBlending) to ensure the mathematical continuity of the inverted profile curve and finally output adaptive denoising and smoothed data.
[0091] The virtual spatial filter uses vector multiply-add instructions to perform a linear smooth weighted fusion of the narrow-window and wide-window outputs, which can be represented as:
[0092]
[0093] Among them, the mixed weight It changes linearly with distance within the transition interval:
[0094]
[0095] in, , These are the output results of narrow-window and wide-window convolutions, respectively. , These represent the starting and ending distance boundaries of the transition interval, respectively.
[0096] When executing the physical equations for lidar inversion (including the Fernald two-component inversion formula), the ARM-based serial scalar computing architecture is prone to computational delays in the processor pipeline due to the large number of floating-point divisions and transcendental function operations (such as exponential calculations). The single-profile processing latency of the aforementioned embedded scalar processor platform is typically on the order of milliseconds. When the inversion processing speed is mismatched with the physical scan frame rate, it may limit the spatial resolution in dynamic scanning mode, making it difficult to fully meet the engineering requirements of microsecond-level high-frequency transient solutions.
[0097] In one embodiment, such as Figure 4 As shown, in order to reduce inversion delay and improve inversion speed, the method also includes: obtaining the 8-bit floating-point reciprocal estimate of the divisor when processing the floating-point division operation in the inversion formula; performing double Newton-Raphson iterative improvement on the 8-bit floating-point reciprocal estimate of the divisor to generate a 24-bit single-precision reciprocal; and multiplying the dividend by the 24-bit single-precision reciprocal.
[0098] Addressing the floating-point division (dividend) in the inversion formula that causes microarchitecture pipeline stalls. With divisor of (In terms of computation), this application system abandons the standard mathematical library and scalar hardware divider. The underlying microarchitecture execution logic of the deterministic nonlinear solution engine is as follows: it calls the underlying SIMD instruction vrecpeq_f32 to obtain the 8-bit floating-point reciprocal estimate of the divisor B, and seamlessly combines the error step calculation instruction vrecpsq_f32 and the vector multiplication instruction to perform dual Newton-Raphson (NR) iterative improvement (including the combination of vrecpsq_f32 and vmulq_f32 instructions), gradually improving the mantissa precision to 16 bits and 24-bit single-precision reciprocal that meets the single-precision floating-point standard. :
[0099]
[0100]
[0101]
[0102] in, The initial inverse estimate vector generated for vrecpeq_f32; , These are the refined reciprocal vectors after the first and second NR iterations, respectively; This is the vector of dividends, corresponding to the dividend A; The divisor direction corresponds to the divisor B.
[0103] Finally, it is calculated by a concurrent multiplier. The calculation results. The above instruction refactoring forces the unpredictable serial divider block into a deterministic, fixed-length machine-cycle parallel pipeline.
[0104] In one embodiment, such as Figure 5 As shown, in order to reduce inversion delay and improve inversion speed, the method also includes: when processing the transcendental function operation in the inversion formula, for the fixed atmospheric molecular Rayleigh scattering baseline, a pre-computation lookup table based on memory pointer index mapping is constructed, and the pre-computation lookup table is read during the calculation; for the aerosol attenuation integral term that changes dynamically with space, a Minimax polynomial approximation algorithm is constructed for instruction-level concurrent solution.
[0105] For transcendental functions in the inversion formula (e.g.) The above-mentioned solution engine performs calculations based on spatial distance parameters. The algorithm employs a branched adaptive computation strategy: for a fixed atmospheric molecular Rayleigh scattering baseline, a pre-calculated lookup table (static Rayleigh attenuation) is constructed, and data is directly read from the L1 / L2 cache using memory pointer indexing; for the spatially varying aerosol attenuation integral term, a Minimax polynomial approximation algorithm is constructed using the vector multiply-accumulate instruction vmlaq_f32 of the aforementioned SIMD engine for instruction-level concurrent solution. The results of both are combined by a multiplier to output the exponent term calculated using branched adaptive computation.
[0106] Finally, adaptive denoising and smoothing of data, calculation results Furthermore, the aforementioned exponential terms (transcendental functions) are processed synchronously by a global convergence multiplier, achieving a physical closed loop for microsecond-level transient physical inversion results and completely avoiding the call latency of standard macro kernel library functions.
[0107] like Figure 2 As shown in (a) of the related technology, a lidar data processing system based on the Zynq platform is described for comparison. This comparative system retains an active transimpedance amplifier and an analog low-pass filter network, which are susceptible to temperature drift, in the analog front-end, and integrates an embedded Linux monolithic kernel system on the PS side of the processing system. During processing, the comparative system uses a single CPU core to sequentially call denoising library functions, correction library functions, and division and exponentiation instructions from the standard mathematical library. Furthermore, the various calculation modules frequently need to perform read / write operations through the external double data rate DDR main memory via the AXI bus.
[0108] Testing revealed that, under the premise of ensuring identical physical input stimuli and test conditions, the aforementioned comparative system encountered severe memory access bottlenecks on the embedded scalar processor platform equipped with a monolithic kernel system as the number of spatial distance libraries increased. Furthermore, the serial division in the inversion formula, performed by calling its non-pipelined scalar floating-point units, caused pipeline bubbles and computational blockages in the processor. The complete inversion of a single radar profile (containing the same number of spatial distance libraries) by the aforementioned comparative system took several milliseconds. In high-speed scanning applications, this lag in inversion speed can easily lead to spatial resolution degradation and motion artifacts during 3D reconstruction.
[0109] The system provided in this application, thanks to the combination of the above-mentioned simulated physical gain with bare-metal AMP architecture, on-chip cache closed-loop data flow with zero penetration of external main memory, register-level cyclic fusion, and microarchitecture nonlinear instruction reconstruction, compresses the single profile inversion time of the same data scale and the same spatial resolution to the order of hundreds of microseconds (more than ten times), and achieves high-frequency transient calculation and high-fidelity three-dimensional reconstruction of aerosol fields without reducing the radar physical scan frame rate.
[0110] The technical features of the above embodiments can be combined in any way. For the sake of brevity, 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, they should be considered to be within the scope of this specification.
[0111] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A hardware-software heterogeneous data processing system for atmospheric sounding lidar, characterized in that, include: At the PL end, the collected lidar signal data is received and preliminarily processed to generate target data; The PS end, connected to the PL end via ACP, includes an internal cache and at least one processing core, with a virtual space filter configured within the processing core. Target data is stored in the internal cache via ACP. The processing core is configured to schedule the PL end to perform preliminary processing on the digital signal, read the target data from the internal cache, and run the virtual space filter to filter the target data. The virtual space filter performs register-level single-loop fusion of the independent algorithm nodes that need to be called serially. Within the single loop fusion, the calculation of each independent algorithm is completed sequentially, and all intermediate data resides in the register file. The background noise constant is pre-stored in the register, and the distance squared correction weight is pre-stored in the internal cache; The register-level single-cycle fusion process includes: Read the target data from the internal cache, push the target data into the vector register, convert it into single-precision floating-point format, and then store it in the vector register. In the internal arithmetic logic unit of the processing core, background noise is subtracted from the target data based on the background noise constant of the profile; at the same time, the distance squared correction weight is preloaded into the register, and after the background noise subtraction calculation is completed, distance correction is performed based on the distance squared correction weight. Adaptive convolution processing is performed on the target data after distance correction, and the result of adaptive convolution processing is stored in the internal cache.
2. The hardware-software heterogeneous data processing system for atmospheric sounding lidar according to claim 1, characterized in that, When the PS (Power Processor) contains multiple processing cores, its computing resources are divided according to function as follows: The first processing core schedules the PL terminal to perform preliminary processing on the digital signal and generate target data. After the target data is stored in the internal buffer via ACP, the second processing core is notified of the data readiness via an interrupt signal. The second processing core responds to interrupt signals, reads target data from the internal cache, and runs a virtual space filter to filter the target data.
3. The hardware-software heterogeneous data processing system for atmospheric sounding lidar according to claim 1, characterized in that, The data acquisition module for collecting lidar signal data includes: Photodetector; The minimalist analog front-end module uses a passive broadband matching network to convert the photoelectric signal output by the photodetector into current / voltage, and provides physical gain via an RF broadband amplifier. The analog-to-digital converter performs analog-to-digital conversion on the signal output from the simplified analog front-end module to generate target acquisition lidar signal data.
4. The hardware-software heterogeneous data processing system for atmospheric sounding lidar according to claim 1, characterized in that, The processing core is also equipped with a deterministic nonlinear solution engine, including: The deterministic division pipeline module is used to handle floating-point division operations in the inversion formula; The transcendental function heterogeneous mapping module is used to handle transcendental function operations in inversion formulas.
5. A software-hardware heterogeneous data processing method for atmospheric sounding lidar, characterized in that, include: The target data is directly stored in the internal cache via ACP; Read the target data from the internal cache, push the target data into the vector register, convert it into single-precision floating-point format, and then store it in the vector register. In the internal arithmetic logic unit of the processing core, background noise is subtracted from the target data based on the background noise constant of the profile; at the same time, the distance squared correction weight is preloaded into the register, and after the background noise subtraction calculation is completed, distance correction is performed based on the distance squared correction weight. The background noise constant is pre-stored in a register, and the distance squared correction weight is pre-stored in an internal cache; Adaptive convolution processing is performed on the target data after distance correction, and the result of adaptive convolution processing is stored in the internal cache.
6. The method for heterogeneous hardware and software data processing for atmospheric sounding lidar according to claim 5, characterized in that, Adaptive convolution processing is performed on the distance-corrected target data, including: When the detection distance is less than the preset distance threshold, narrow-window single-precision floating-point convolution is used to adaptively convolve the distance squared correction data. When the detection distance is greater than the preset distance threshold, the distance squared correction data is adaptively convolutionally processed using wide-window throughput smoothing.
7. The software-hardware heterogeneous data processing method for atmospheric sounding lidar according to claim 6, characterized in that, Running a virtual spatial filter to perform adaptive convolution processing on the distance-squared corrected data also includes: Within a set transition interval near a preset distance threshold, the linear smooth weighted fusion of the narrow window and wide window output results is performed using vector multiply-add instructions.
8. The software-hardware heterogeneous data processing method for atmospheric sounding lidar according to claim 5, characterized in that, The method also includes: When processing floating-point division operations in the inversion formula, obtain the 8-bit floating-point reciprocal estimate of the divisor; The 8-bit floating-point reciprocal of the divisor is improved by double Newton-Raphson iteration to generate a 24-bit single-precision reciprocal; Multiply the dividend by the reciprocal of the 24-bit single-precision number.
9. The method for heterogeneous hardware and software data processing for atmospheric sounding lidar according to claim 5 or 8, characterized in that, The method also includes: When dealing with transcendental function operations in the inversion formula, for a fixed atmospheric molecular Rayleigh scattering baseline, a pre-computed lookup table based on memory pointer index mapping is constructed, and the pre-computed lookup table is read during the calculation. For the aerosol attenuation integral term that varies dynamically with space, a Minimax polynomial approximation algorithm is constructed for instruction-level concurrent solution.