Multi-channel parallel segmented pulse compression acceleration method, device and equipment based on FPGA
By adopting the multi-channel parallel segmented pulse pressure acceleration method on the FPGA platform, the problem of the segmented pulse pressure algorithm taking too long in real-time signal processing is solved, and efficient echo data processing and flexible application adaptability are achieved.
Patent Information
- Application Number
- CN202510081067.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-20
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2045-01-20
AI Technical Summary
In the prior art, segmented pulse pressure algorithms take too long in real-time signal processing applications, resulting in the inability to process complex echo data in time.
Using a multi-channel parallel segmented pulse pressure acceleration method based on FPGA, multiple pulse pressure modules are generated by configuring the pulse pressure parallelism degree and the number of segments and sub-segment length of the matching filter, and these modules are used for parallel segmented pulse pressure processing.
The acceleration of the segmented pulse pressure algorithm is achieved, the processing time is reduced, complex echo data can be processed in a timely manner, and the design is flexible and can be adapted quickly according to different application needs.
Smart Images

Figure CN119535396B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of radar signal processing, and in particular relates to a multi-channel parallel segmented pulse compression acceleration method, device and equipment based on FPGA. Background Art
[0002] In the field of radar signal processing, the segmented pulse compression algorithm is a common means of resisting intermittent sampling and forwarding interference. By designing a complex radar transmission waveform, each sub-segment in the complex waveform pulse transmitted can be used as a shield pulse for each other, and then the segmented pulse compression method can be used to easily distinguish the interfered sub-segments and eliminate the corresponding interfered sub-segments to achieve the effect of anti-interference. The segmented pulse compression algorithm divides the matched filter into multiple narrowband filter groups for multiple pulse compressions, which increases the number and time consumption of the traditional pulse compression method, so it has great difficulties in its engineering application. The number of narrowband filter groups also affects the size of the overall data after segmented pulse compression, and the algorithm time will also increase with the increase of narrowband filter groups.
[0003] The pulse compression algorithm is divided into two types when it is implemented: time domain pulse compression and frequency domain pulse compression. Time domain pulse compression requires complex operations such as convolution and sliding window, which takes a long time. In comparison, the frequency domain pulse compression algorithm is more flexible and more suitable for engineering applications. However, the frequency domain pulse compression algorithm consumes a large number of registers when implemented on the hardware platform, and the delay is large, which does not meet the requirements of high real-time performance. Summary of the invention
[0004] In order to solve the above problems existing in the prior art, the present invention provides a multi-channel parallel segmented pulse compression acceleration method, device and equipment based on FPGA.
[0005] The technical problem to be solved by the present invention is achieved through the following technical solutions:
[0006] A multi-channel parallel segmented pulse compression acceleration method based on FPGA is applied to FPGA; the method comprises:
[0007] Step 1: Configure pulse pressure parallelism , and configure the number of segments and sub-segment length of the matched filter;
[0008] Step 2: According to the number of segments and the pulse pressure parallelism Determine the target pulse pressure frequency and generate Pulse pressure module;
[0009] Step 3: According to the pulse pressure parallelism and the target pulse pressure times are respectively A pulse compression module generates a corresponding segment coefficient for each segmented pulse compression;
[0010] Step 4: Perform segmented pulse pressure, including: Each pulse compression module inputs the segmentation coefficient corresponding to the current segmentation pulse compression, so that each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, and uses the segmented narrowband filter to perform segmentation pulse compression on the echo data; wherein the segmentation coefficient is used to indicate the segmentation position when the pulse compression module segments the matched filter;
[0011] Step 5: Determine whether the current segmented pulse pressure frequency reaches the target pulse pressure frequency; if not, return to step 4; if reached, complete the pulse pressure.
[0012] Optionally, the pulse pressure parallelism configuration , including: Configuring pulse pressure parallelism , so that the number of segments can be controlled by the pulse compression parallelism divisibility;
[0013] The method according to the number of segments and the pulse pressure parallelism Determining the target pulse pressure frequency includes: dividing the number of segments by the pulse pressure parallelism , get the target pulse pressure frequency.
[0014] Optionally, the pulse pressure parallelism and the target pulse pressure times are respectively The pulse compression module generates the corresponding segment coefficients for each segment pulse compression, including:
[0015] According to the pulse pressure parallelism and the target pulse pressure frequency, and respectively calculate the The segmentation coefficient corresponding to each segmentation pulse compression of the pulse compression module;
[0016] The calculation formula of the segmentation coefficient is:
[0017] ;
[0018] in, , is the target pulse pressure frequency; is the pulse compression module number, ; Indicates The pulse pressure module is The segment coefficient corresponding to the sub-segment pulse pressure.
[0019] Optionally, each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, including:
[0020] Each pulse compression module is based on the sub-segment length And the received segment coefficient , the matched filter ~ The number on the bit remains unchanged and the remaining bits are set to 0.
[0021] Optionally, the pulse compression module includes: a matched filter, a segmentation unit, an FFT unit, a conjugation unit, a complex multiplication unit and an IFFT unit;
[0022] The segmentation unit is used to segment the matched filter according to the sub-segment length and the received segmentation coefficient to obtain a segmented narrowband filter;
[0023] The FFT unit is used to perform FFT on the narrowband filter obtained after segmentation to obtain an FFT result;
[0024] The conjugation unit is used to perform conjugation processing on the FFT result to obtain a conjugated result;
[0025] The complex multiplication unit is used to complex multiply the conjugate result with the echo data to obtain a complex multiplication result;
[0026] The IFFT unit is used to perform IFFT on the complex multiplication result to obtain a segmented pulse compression result.
[0027] Optionally, the pulse pressure module further includes: a marking unit;
[0028] The marking unit is used to set a preset flag position for marking the end of FFT as valid when the FFT unit obtains the FFT result;
[0029] The step 4 specifically includes:
[0030] For each pulse compression module, the corresponding segmentation coefficient of the current segmentation pulse compression is input to the pulse compression module, so that the pulse compression module performs the current segmentation pulse compression;
[0031] When the flag bit in the pulse compression module is set to be valid, the segment coefficient corresponding to the next segment pulse compression is input to the pulse compression module, so that the pulse compression module synchronously performs the next segment pulse compression.
[0032] The present invention also provides a multi-channel parallel segmented pulse compression acceleration device based on FPGA, which is applied to FPGA; the device comprises:
[0033] Configuration module, used to configure pulse pressure parallelism , and configure the number of segments and sub-segment length of the matched filter;
[0034] The first preparation module is used to prepare the pulse pressure according to the number of segments and the pulse pressure parallelism. Determine the target pulse pressure frequency and generate Pulse pressure module;
[0035] The second preparation module is used to prepare the pulse pressure according to the parallelism and the target pulse pressure times are respectively A pulse compression module generates a corresponding segment coefficient for each segmented pulse compression;
[0036] The segmented pulse compression module is used to perform segmented pulse compression, including: respectively Each pulse compression module inputs the segmentation coefficient corresponding to the current segmentation pulse compression, so that each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, and uses the segmented narrowband filter to perform segmentation pulse compression on the echo data; wherein the segmentation coefficient is used to indicate the segmentation position when the pulse compression module segments the matched filter;
[0037] The judging module is used to judge whether the current segmented pulse pressure times have reached the target pulse pressure times; if not, continue to trigger the segmented pulse pressure module; if reached, complete the pulse pressure.
[0038] The present invention also provides an electronic device, comprising an FPGA and a memory;
[0039] The memory is used to store the program written in Verilog language;
[0040] The FPGA is used to execute the program stored in the memory to implement any of the above-mentioned multi-channel parallel segmented pulse compression acceleration methods based on FPGA.
[0041] The FPGA-based multi-channel parallel segmented pulse compression acceleration method provided by the present invention utilizes the advantages of the FPGA hardware platform in pipeline design, parallel design, and rich resources to generalize and accelerate the segmented pulse compression algorithm, so that it can be applied in the field of radar real-time signal processing, thereby solving the problem of excessive time consumption in the real-time signal processing application of the segmented pulse compression algorithm in the prior art, resulting in the inability to process complex echo data in a timely manner. In addition, the universal design of the pulse compression module of the present invention can also be quickly adapted to different engineering application requirements.
[0042] The present invention will be further described in detail below with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] Figure 1 It is a flowchart of a multi-channel parallel segmented pulse compression acceleration method based on FPGA provided by an embodiment of the present invention;
[0044] Figure 2 FIG. 4 shows a schematic diagram of the structure of the pulse pressure module in an embodiment of the present invention;
[0045] Figure 3 is a schematic diagram of segmenting a matched filter in an embodiment of the present invention;
[0046] Figure 4 is a schematic diagram of the parallel pipeline operation of the pulse compression module provided in an embodiment of the present invention;
[0047] Figure 5 The invention is a modular implementation of a multi-channel parallel segmented pulse compression acceleration method based on FPGA provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0048] The present invention is further described in detail below with reference to specific embodiments, but the embodiments of the present invention are not limited thereto.
[0049] In order to solve the problem that the real-time signal processing application of the segmented pulse compression algorithm in the prior art takes too long and causes the inability to process complex echo data in time, the embodiment of the present invention provides a multi-channel parallel segmented pulse compression acceleration method based on FPGA (field programmable gate array), such as Figure 1 As shown, the method comprises the following steps:
[0050] Step 1: Configure pulse pressure parallelism , and configure the number of segments and sub-segment length of the matched filter.
[0051] Among them, the matched filter is a pulse compression filter used for pulse compression of echo data. It works by matching the shape of the radar pulse to optimize signal detection and noise suppression. The number of segments and sub-segment length of the matched filter are used to segment the matched filter later. Pulse compression parallelism Indicates the number of parallel paths of segmented pulse compression, and its value is an integer greater than 1.
[0052] Here, pulse pressure parallelism It can be determined according to the number of segments. Specifically, by configuring the pulse pressure parallelism , so that the number of segments can be controlled by the pulse compression parallelism Divisible.
[0053] For example, assuming the total length of the matched filter is 4800, you can configure the number of segments of the matched filter is 30, then the sub-segment length is 160. 5 can divide 30 evenly, so the pulse pressure parallelism can be configured is 5.
[0054] Step 2: According to the number of segments and pulse pressure parallelism Determine the target pulse pressure frequency and generate A pulse pressure module.
[0055] Specifically, use the number of segments Divided by pulse pressure parallelism , get the target pulse pressure frequency In practical applications, is an integer greater than 1 or equal to 1.
[0056] For example, let the number of segments be The pulse pressure parallelism is 30. If the target pulse pressure is 5, =30 / 5=6.
[0057] In the embodiment of the present invention, by Pulse pressure module implementation Specifically, see Figure 2 , the pulse compression module includes: a matched filter, a segmentation unit, a FFT (Fast Fourier Transform) unit, a conjugation unit, a complex multiplication unit and an IFFT (Inverse Fast Fourier Transform) unit.
[0058] The segmentation unit is used to segment the matched filter according to the sub-segment length and the received segmentation coefficient to obtain a segmented narrowband filter;
[0059] An FFT unit is used to perform FFT on the narrowband filter obtained after segmentation to obtain an FFT result;
[0060] The conjugate unit is used to perform conjugate processing on the FFT result to obtain the conjugate result;
[0061] The complex multiplication unit is used to complex-multiply the conjugate result with the echo data to obtain a complex multiplication result; wherein the echo data is pre-stored in a BRAM (Buffer Random Access Memory, random access memory), and the echo data can be read from the BRAM by sending a read enable signal to the BRAM.
[0062] The IFFT unit is used to perform IFFT on the complex multiplication result to obtain the segmented pulse compression result.
[0063] Step 3: Based on pulse pressure parallelism and target pulse pressure times, respectively. Each pulse compression module generates a corresponding segment coefficient for each segment pulse compression.
[0064] Specifically, according to the pulse pressure parallelism and target pulse pressure times, respectively calculated using the preset segment coefficient calculation formula The segmentation coefficient corresponding to each segmentation pulse compression of the pulse compression module;
[0065] The calculation formula of the segment coefficient is:
[0066] ;
[0067] in, , is the pulse compression module number, ; Indicates The pulse pressure module is The segment coefficient corresponding to the sub-segment pulse pressure.
[0068] In the embodiment of the present invention, The pulse compression modules are identical.
[0069] Step 4: Perform segmented pulse pressure, including: Each pulse compression module inputs the segmentation coefficient corresponding to the current segmented pulse compression, so that each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, and uses the segmented narrowband filter to perform segmented pulse compression on the echo data; wherein the segmentation coefficient is used to indicate the segmentation position when the pulse compression module segments the matched filter.
[0070] About For the steps of inputting the corresponding segment coefficients for each pulse compression module, refer to Figure 5 The example shown assumes that the pulse pressure parallelism , target pulse pressure frequency =6, and the current Each pulse compression module is performing the first segmented pulse compression, that is, , the segmentation coefficients input to the 5 pulse compression modules are 1, 2, 3, 4, and 5. When the second segmentation pulse compression is performed, the segmentation coefficients input to the 5 pulse compression modules are 6, 7, 8, 9, and 10. And so on, until the sixth segmentation pulse compression is performed, the segmentation coefficients input to the 5 pulse compression modules are 26, 27, 28, 29, and 30.
[0071] From the above example, we can see that the upper limit of the segment coefficient is the number of segments. .
[0072] Each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, including: each pulse compression module segments the matched filter according to the sub-segment length And the received segment coefficient , the matched filter ~ The number on the bit remains unchanged, and the remaining bits are set to 0, such as Figure 3 shown.
[0073] Then, each pulse compression module uses the segmented narrowband filter to perform segmented pulse compression on the echo data. When all pulse compression modules complete the current segmented pulse compression, the pulse compression times increase by 1.
[0074] Among them, each pulse compression module uses the segmented narrowband filter to perform a segmented pulse compression on the echo data. The segmented narrowband filter must be padded with zeros first, and then the FFT unit of the pulse compression module can be used to perform FFT operations. For example, the total length of the matched filter is 4800, and the length of the narrowband filter after segmentation is still 4800. Its data length is padded to 8192 by padded with 0, and then the FFT unit of the pulse compression module can be used to perform FFT operations, and the FFT result is conjugated and aligned with the echo data to enter the complex multiplication module, and the complex multiplication result is IFFT to complete this segmented pulse compression, and the result is output.
[0075] In the embodiment of the present invention, the pulse compression module can read the echo data from the BRAM. Specifically, in practice, whenever the radar receives a new echo signal, the echo signal can be Fourier transformed to form echo data in the frequency domain. Then, the echo data is stored in the BRAM so that each pulse compression module can read the echo data from the BRAM.
[0076] When performing Fourier transform on the echo signal, the Fourier transform length is an integer power of 2, and ; The acquired echo signal Length; when Less than It needs to be filled with zeros to For example, if is 8192, and its length meets the requirement of an integer power of 2, so we can take is 8192. At this time, the Fourier transform of the echo signal can be expressed as:
[0077] ;
[0078] in, represents the acquired echo signal, Express The length of the Fourier transform is The Fourier transform of Indicates echo data.
[0079] Step 5: Determine whether the current segmented pulse pressure frequency reaches the target pulse pressure frequency; if not, return to step 4; if reached, complete the pulse pressure.
[0080] It is understandable that if the current segmented pulse compression frequency does not reach the target pulse compression frequency, when returning to step 4 for segmented pulse compression, the segmented coefficient input to the pulse compression module will also be updated accordingly.
[0081] The FPGA-based multi-channel parallel segmented pulse compression acceleration method provided in the embodiment of the present invention utilizes the advantages of the FPGA hardware platform in pipeline design, parallel design, and rich resources to generalize and accelerate the segmented pulse compression algorithm, so that it can be applied in the field of radar real-time signal processing, thereby solving the problem of excessive time consumption in the real-time signal processing application of the segmented pulse compression algorithm in the prior art, resulting in the inability to process complex echo data in a timely manner. In addition, the universal design of the pulse compression module in the embodiment of the present invention can also be quickly adapted to different engineering application requirements.
[0082] Optionally, in one embodiment, the pulse pressure module may further include: a marking unit;
[0083] The marking unit is used to set the preset flag position for marking the end of FFT to be valid when the FFT unit obtains the FFT result, thereby forming a feedback mechanism, such as Figure 2 shown.
[0084] On this basis, step 4 in the above method may specifically include:
[0085] For each pulse compression module, the corresponding segmentation coefficient of the current segmentation pulse compression is input to the pulse compression module, so that the pulse compression module performs the current segmentation pulse compression;
[0086] When the flag bit in the pulse compression module is set to valid, that is, when feedback is received from the marking unit, the corresponding segment coefficient for the next segment pulse compression is input to the pulse compression module, so that the pulse compression module performs the next segment pulse compression synchronously. Figure 4 As shown, for each pulse compression module, each time it performs segmented pulse compression, it can simultaneously perform IFFT operation of the current segmented pulse compression and FFT operation of the next segmented pulse compression. The time of two adjacent pulse compressions can overlap, and there is no need to wait for the previous one to be completed before performing the next pulse compression, thereby realizing data pipeline operation and greatly saving the running time of the pulse compression algorithm.
[0087] The FPGA-based multi-channel parallel segmented pulse compression acceleration method provided by the embodiment of the present invention is applied to FPGA. Specifically, a program for implementing the above method is written in Verilog language, and the FPGA implements the FPGA-based multi-channel parallel segmented pulse compression acceleration method by executing the program.
[0088] It is worth mentioning that if FPGA is used directly for pulse compression processing, a large amount of resource consumption may be generated, which will increase the time consumption due to the lack of pipeline design, and the fixed parameters will also lead to poor versatility, and redesign is required in different application scenarios. The method provided by the embodiment of the present invention not only utilizes the fast running speed of FPGA itself, but also cleverly utilizes the parallel pipeline feature of FPGA, so that the method of the embodiment of the present invention effectively accelerates the implementation efficiency of the pulse compression algorithm and improves its real-time performance.
[0089] The embodiment of the present invention adopts the frequency domain pulse compression method, avoids complex operations such as sliding window and convolution, reduces the development difficulty, and can directly call the FFT-IP (Intellectual Property) core of Xilinx for algorithm development, saves resource consumption, and improves the algorithm running speed.
[0090] The pulse compression module in the embodiment of the present invention realizes a highly universal design. By configuring the number of segments, sub-segment length and pulse compression parallelism of the matching filter, the pulse compression module is controlled in real time through the segmentation coefficient, and the parallelism of the segmented pulse compression can be changed at any time. There is no need to change the underlying code. Only the input configuration parameters need to be changed to complete the rapid adjustment of the modular implementation of the pulse compression algorithm, which is convenient for transplantation and improves development efficiency. Different parameters can be configured according to different complex echo data, and resources and time consumption can be optimized according to the hardware level and its application scenario, so that the pulse compression algorithm can achieve the best effect, short time consumption, high real-time performance, and easy to quickly adapt to different hardware and engineering environments, shortening the development cycle, improving the shortcomings of the existing technology that the real-time signal processing of the segmented pulse compression algorithm is difficult to apply in engineering, and facilitating programmers to accelerate code development and module calling.
[0091] In the embodiment of the present invention, the echo data is stored in BRAM alone instead of in the pulse compression module, so a large amount of RAM is not needed to store the waveform, thus saving resources, reducing the resource consumption of the pulse compression module, and further improving the algorithm operation efficiency.
[0092] The embodiment of the present invention adopts a pipeline design, and FFT and IFFT are cross-started, which shortens the algorithm running time and improves the algorithm running efficiency.
[0093] In summary, the embodiments of the present invention utilize the advantages of the FPGA hardware platform in pipeline design, parallel design, and rich resources to generalize and accelerate the design of the segmented pulse compression algorithm. The entire algorithm module is updated through real-time configuration of parameters such as parallelism and the number of segments. The pipeline, modular, and universal modular design are adopted to ensure that the universal and high real-time design is completed while minimizing resource consumption. The entire algorithm module is implemented based on the FPGA platform, the algorithm is simple, easy to implement, and has high flexibility. The algorithm time consumption can be further reduced and the algorithm performance can be improved by optimizing the hardware platform and increasing the clock.
[0094] The FPGA-based multi-channel parallel segmented pulse compression acceleration method provided in the embodiment of the present invention can be realized in the field of radar real-time signal processing. It solves the problem that the real-time signal processing application of the segmented pulse compression algorithm in the prior art takes too long and leads to the inability to process complex echo data in time. In addition, the universal design of the pulse compression module in the embodiment of the present invention can be quickly adapted to different engineering application requirements.
[0095] Based on the same inventive concept, an embodiment of the present invention further provides a multi-channel parallel segmented pulse compression acceleration device based on FPGA, which is applied to FPGA; the device includes:
[0096] Configuration module, used to configure pulse pressure parallelism , and configure the number of segments and sub-segment length of the matched filter;
[0097] The first preparation module is used to calculate the number of segments and the pulse pressure parallelism Determine the target pulse pressure frequency and generate Pulse pressure module;
[0098] The second preparation module is used to calculate the pulse pressure parallelism and target pulse pressure times, respectively. A pulse compression module generates a corresponding segment coefficient for each segmented pulse compression;
[0099] The segmented pulse compression module is used to perform segmented pulse compression, including: Each pulse compression module inputs the segmentation coefficient corresponding to the segmentation pulse compression of this time, so that each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, and uses the segmented narrowband filter to perform segmentation pulse compression on the echo data; wherein the segmentation coefficient is used to indicate the segmentation position when the pulse compression module segments the matched filter;
[0100] The judgment module is used to judge whether the current segmented pulse pressure times have reached the target pulse pressure times; if not, continue to trigger the segmented pulse pressure module; if it has reached, complete the pulse pressure.
[0101] Optionally, configure the module to configure the pulse pressure parallelism , including: Configuring pulse pressure parallelism , so that the number of segments can be controlled by the pulse compression parallelism divisibility;
[0102] According to the number of segments and pulse pressure parallelism Determine the target pulse pressure frequency, including: dividing the number of segments by the pulse pressure parallelism , get the target pulse pressure frequency.
[0103] Optionally, the second preparation module, according to the pulse pressure parallelism and target pulse pressure times, respectively. The pulse compression module generates the corresponding segment coefficients for each segment pulse compression, including:
[0104] According to pulse pressure parallelism and target pulse pressure times, respectively calculated using the preset segment coefficient calculation formula The segmentation coefficient corresponding to each segmentation pulse compression of the pulse compression module;
[0105] The calculation formula of the segmentation coefficient is:
[0106] ;
[0107] in, , is the target pulse pressure frequency; is the pulse compression module number, ; Indicates The pulse pressure module is The segment coefficient corresponding to the sub-segment pulse pressure.
[0108] Optionally, each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, including:
[0109] Each pulse compression module is based on the sub-segment length And the received segment coefficient , the matched filter ~ The number on the bit remains unchanged and the remaining bits are set to 0.
[0110] Optionally, the pulse compression module includes: a matched filter, a segmentation unit, an FFT unit, a conjugation unit, a complex multiplication unit and an IFFT unit;
[0111] A segmentation unit, used for segmenting the matched filter according to the sub-segment length and the received segmentation coefficient to obtain a segmented narrowband filter;
[0112] An FFT unit is used to perform FFT on the narrowband filter obtained after segmentation to obtain an FFT result;
[0113] The conjugate unit is used to perform conjugate processing on the FFT result to obtain the conjugate result;
[0114] A complex multiplication unit, used for complex multiplying the conjugate result with the echo data to obtain a complex multiplication result;
[0115] The IFFT unit is used to perform IFFT on the complex multiplication result to obtain the segmented pulse compression result.
[0116] Optionally, the pulse pressure module further includes: a marking unit;
[0117] A marking unit, used for setting a preset flag position for marking the end of FFT to be valid when the FFT unit obtains the FFT result;
[0118] Segmented pulse compression module, specifically used for:
[0119] For each pulse compression module, the corresponding segmentation coefficient of the current segmentation pulse compression is input to the pulse compression module, so that the pulse compression module performs the current segmentation pulse compression;
[0120] When the flag bit in the pulse compression module is set to be valid, the segment coefficient corresponding to the next segment pulse compression is input to the pulse compression module, so that the pulse compression module synchronously performs the next segment pulse compression.
[0121] Based on the same inventive concept, an embodiment of the present invention further provides an electronic device, including an FPGA and a memory;
[0122] Memory, used to store the program written in Verilog language;
[0123] FPGA is used to execute the program stored in the memory to realize any of the above-mentioned multi-channel parallel segmented pulse compression acceleration methods based on FPGA.
[0124] It should be noted that, for the device / electronic device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0125] It should be noted that the terms "first", "second", etc. are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of devices and methods consistent with some aspects of the present invention.
[0126] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification.
[0127] Although the present invention is described herein in conjunction with various embodiments, in the process of implementing the claimed invention, those skilled in the art can understand and implement other changes to the disclosed embodiments by viewing the drawings and the disclosed content. In the description of the present invention, the term "comprising" does not exclude other components or steps, "one" or "an" does not exclude multiple situations, and "multiple" means two or more, unless otherwise clearly and specifically limited. In addition, certain measures are recorded in different embodiments, but this does not mean that these measures cannot be combined to produce good results.
[0128] The above contents are further detailed descriptions of the present invention in combination with specific preferred embodiments, and it cannot be determined that the specific implementation of the present invention is limited to these descriptions. For ordinary technicians in the technical field to which the present invention belongs, several simple deductions or substitutions can be made without departing from the concept of the present invention, which should be regarded as falling within the protection scope of the present invention.
Claims
1. A multi-channel parallel segmented pulse compression acceleration method based on FPGA, characterized in that: Applied to FPGA; the method comprises: Step 1: configure the pulse compression parallelism, and configure the number of segments and sub-segment length of the matched filter; the pulse compression parallelism represents the number of parallel paths of the segmented pulse compression; Step 2: Determine the target pulse pressure frequency according to the number of segments and the pulse pressure parallelism, and generate Pulse compression module to Pulse pressure module implementation Parallel segmented pulse pressure; Step 3: According to the pulse pressure parallelism and the target pulse pressure frequency, A pulse compression module generates a corresponding segment coefficient for each segmented pulse compression; Step 4: Perform segmented pulse pressure, including: Each pulse compression module inputs the segmentation coefficient corresponding to the current segmentation pulse compression, so that each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, and uses the segmented narrowband filter to perform segmentation pulse compression on the echo data; wherein the segmentation coefficient is used to indicate the segmentation position when the pulse compression module segments the matched filter; Step 5: determine whether the current segmented pulse pressure times have reached the target pulse pressure times; if not, return to step 4; if reached, complete the pulse pressure; The pulse pressure parallelism and the target pulse pressure frequency are respectively The pulse compression module generates the corresponding segment coefficients for each segment pulse compression, including: According to the pulse pressure parallelism and the target pulse pressure frequency, the preset segment coefficient calculation formula is used to calculate the The segmentation coefficient corresponding to each segmentation pulse compression of the pulse compression module; The calculation formula of the segmentation coefficient is: ; in, , is the target pulse pressure frequency; is the pulse compression module number, ; Indicates The pulse pressure module is The segment coefficient corresponding to the sub-segment pulse pressure.
2. The multi-channel parallel segmented pulse compression acceleration method based on FPGA according to claim 1, characterized in that: The configuring of the pulse pressure parallelism includes: configuring the pulse pressure parallelism so that the number of segments can be divided by the pulse pressure parallelism; Determining the target pulse pressure frequency according to the number of segments and the pulse pressure parallelism includes: dividing the number of segments by the pulse pressure parallelism to obtain the target pulse pressure frequency.
3. The multi-channel parallel segmented pulse compression acceleration method based on FPGA according to claim 1, characterized in that: Each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, including: Each pulse compression module is based on the sub-segment length And the received segment coefficient , the matched filter ~ The number on the bit remains unchanged and the remaining bits are set to 0.
4. The multi-channel parallel segmented pulse compression acceleration method based on FPGA according to claim 1, characterized in that: The pulse compression module includes: a matching filter, a segmentation unit, an FFT unit, a conjugation unit, a complex multiplication unit and an IFFT unit; The segmentation unit is used to segment the matched filter according to the sub-segment length and the received segmentation coefficient to obtain a segmented narrowband filter; The FFT unit is used to perform FFT on the narrowband filter obtained after segmentation to obtain an FFT result; The conjugation unit is used to perform conjugation processing on the FFT result to obtain a conjugated result; The complex multiplication unit is used to complex multiply the conjugate result with the echo data to obtain a complex multiplication result; The IFFT unit is used to perform IFFT on the complex multiplication result to obtain a segmented pulse compression result.
5. The FPGA-based multi-channel parallel segmented pulse compression acceleration method according to claim 4, characterized in that: The pulse pressure module further includes: a marking unit; The marking unit is used to set a preset flag position for marking the end of FFT as valid when the FFT unit obtains the FFT result; The step 4 specifically includes: For each pulse compression module, the corresponding segmentation coefficient of the current segmentation pulse compression is input to the pulse compression module, so that the pulse compression module performs the current segmentation pulse compression; When the flag bit in the pulse compression module is set to be valid, the segment coefficient corresponding to the next segment pulse compression is input to the pulse compression module, so that the pulse compression module synchronously performs the next segment pulse compression.
6. A multi-channel parallel segmented pulse compression acceleration device based on FPGA, characterized in that: Applied to FPGA; the device comprises: A configuration module, used to configure the pulse compression parallelism, and configure the number of segments and sub-segment length of the matched filter; the pulse compression parallelism represents the number of parallel paths of the segmented pulse compression; The first preparation module is used to determine the target pulse pressure frequency according to the number of segments and the pulse pressure parallelism, and generate Pulse compression module to Pulse pressure module implementation Parallel segmented pulse pressure; The second preparation module is used to respectively prepare the pulse pressure parallelism and the target pulse pressure number according to the pulse pressure parallelism and the target pulse pressure number. A pulse compression module generates a corresponding segment coefficient for each segmented pulse compression; The pulse pressure parallelism and the target pulse pressure frequency are respectively The pulse compression module generates the corresponding segment coefficients for each segment pulse compression, including: According to the pulse pressure parallelism and the target pulse pressure frequency, the preset segment coefficient calculation formula is used to calculate the The segmentation coefficient corresponding to each segmentation pulse compression of the pulse compression module; The calculation formula of the segmentation coefficient is: ; in, , is the target pulse pressure frequency; is the pulse compression module number, ; Indicates The pulse pressure module is The corresponding segment coefficient of the sub-segment pulse pressure; The segmented pulse compression module is used to perform segmented pulse compression, including: respectively Each pulse compression module inputs the segmentation coefficient corresponding to the current segmentation pulse compression, so that each pulse compression module segments the matched filter according to the sub-segment length and the received segmentation coefficient, and uses the segmented narrowband filter to perform segmentation pulse compression on the echo data; wherein the segmentation coefficient is used to indicate the segmentation position when the pulse compression module segments the matched filter; The judging module is used to judge whether the current segmented pulse pressure times have reached the target pulse pressure times; if not, continue to trigger the segmented pulse pressure module; if reached, complete the pulse pressure.
7. An electronic device, characterized in that: Including FPGA and memory; The memory is used to store the program written in Verilog language; The FPGA is used to execute the program stored in the memory to implement the FPGA-based multi-channel parallel segmented pulse compression acceleration method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Method for processing real time digital pulse compression system based on FPGA
CN101424738A
FT-M6678-based large-time-bandwidth signal real-time pulse compression method
CN114690127A