WO2021237554A1 - 数据处理方法、装置、可移动平台及存储介质 - Google Patents

数据处理方法、装置、可移动平台及存储介质 Download PDF

Info

Publication number
WO2021237554A1
WO2021237554A1 PCT/CN2020/092820 CN2020092820W WO2021237554A1 WO 2021237554 A1 WO2021237554 A1 WO 2021237554A1 CN 2020092820 W CN2020092820 W CN 2020092820W WO 2021237554 A1 WO2021237554 A1 WO 2021237554A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
time
processed
domain data
domain
Prior art date
Application number
PCT/CN2020/092820
Other languages
English (en)
French (fr)
Inventor
吴穹蔗
韩志
Original Assignee
深圳市大疆创新科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市大疆创新科技有限公司 filed Critical 深圳市大疆创新科技有限公司
Priority to CN202080004991.4A priority Critical patent/CN112689832A/zh
Priority to PCT/CN2020/092820 priority patent/WO2021237554A1/zh
Publication of WO2021237554A1 publication Critical patent/WO2021237554A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms

Definitions

  • the embodiments of the present invention relate to the field of data processing technology, and in particular to a data processing method, device, removable platform, and storage medium.
  • the embodiment of the present invention provides a data processing method, device, removable platform and storage medium.
  • the first aspect of the present invention is to provide a data processing method, including:
  • the to-be-processed time-domain data corresponding to the same data set is read from the multiple different sub-storage units as a fast Fourier transform in the fast Fourier transform algorithm.
  • the fast Fourier transform algorithm is used to perform conversion processing on a plurality of time domain input data used for fast Fourier transform to obtain frequency domain data corresponding to the plurality of time domain input data.
  • the second aspect of the present invention is to provide a data processing device, including:
  • Memory used to store computer programs
  • the processor is configured to run a computer program stored in the memory to realize:
  • the to-be-processed time-domain data corresponding to the same data set is read from the multiple different sub-storage units as a fast Fourier transform in the fast Fourier transform algorithm.
  • the fast Fourier transform algorithm is used to perform conversion processing on a plurality of time domain input data used for fast Fourier transform to obtain frequency domain data corresponding to the plurality of time domain input data.
  • the third aspect of the present invention is to provide a movable platform including:
  • the data processing device of the second aspect described above is arranged on the fuselage, and is used to obtain to-be-processed time-domain data and convert the to-be-processed time-domain data into corresponding to the plurality of time-domain input data Frequency domain data.
  • the fourth aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the first aspect.
  • the data processing method, device, removable platform, and storage medium provided by the embodiments of the present invention can avoid data reading conflicts during the Fourier transformation process of time domain data, thereby ensuring data conversion Processing efficiency.
  • FIG. 1 is a schematic flowchart of a data processing method provided by an embodiment of the present invention
  • FIG. 2 is a schematic diagram of the process of obtaining to-be-processed time-domain data in FIG. 1;
  • FIG. 3 is a schematic diagram of the process of performing data arrangement processing on the original time domain data in FIG. 2 to obtain the to-be-processed time domain data;
  • FIG. 4 is a schematic diagram of the process of updating the original address information in FIG. 3 to obtain updated address information corresponding to the original time domain data;
  • FIG. 5 is a schematic diagram of the process of determining multiple time-domain input data corresponding to the fast Fourier transform algorithm in the to-be-processed time-domain data in FIG. 1;
  • FIG. 6 is a schematic diagram of the process of obtaining data address information of multiple time-domain input data corresponding to the fast Fourier transform algorithm in FIG. 5;
  • Fig. 7 is the update of the original address information of the multiple to-be-processed time-domain data included in the target data set in Fig. 6 to obtain multiple time-domain input data corresponding to the fast Fourier transform algorithm Schematic diagram of the process of data address information;
  • FIG. 8 is a schematic diagram of the flow of using the fast Fourier transform algorithm to perform conversion processing on the multiple time domain input data to obtain frequency domain data corresponding to the multiple time domain input data in FIG. 1;
  • FIG. 9 is a schematic flowchart of another data processing method provided by an embodiment of the present invention.
  • FIG. 10 is a schematic flow chart of obtaining the storage order of coefficients corresponding to the Fourier coefficients in FIG. 9; FIG.
  • FIG. 11 is a schematic flowchart of yet another data processing method provided by an embodiment of the present invention.
  • FIG. 12 is a schematic flow chart of performing data arrangement processing on the target frequency domain data in FIG. 11 to obtain processed target frequency domain data;
  • FIG. 13 is a schematic flowchart of updating the original data address in FIG. 12 to obtain an updated data address corresponding to the target frequency domain data;
  • FIG. 14 is a schematic flowchart of yet another data processing method provided by an embodiment of the present invention.
  • FIG. 16 is a schematic diagram of performing data preprocessing operations on data provided by an application embodiment of the present invention.
  • FIG. 17 is a schematic diagram of the first layer processing in FFT of data provided by an application embodiment of the present invention.
  • FIG. 18 is a schematic diagram of the second layer processing in FFT of data provided by an application embodiment of the present invention.
  • FIG. 19 is a schematic diagram of the third layer processing in FFT of data provided by an application embodiment of the present invention.
  • 20 is a schematic diagram of performing data post-processing operations on data provided by an application embodiment of the present invention.
  • 21 is a schematic structural diagram of a data processing device provided by an embodiment of the present invention.
  • FIG. 22 is a schematic structural diagram of a movable platform provided by an embodiment of the present invention.
  • convolution in time domain data is equivalent to multiplication of frequency domain data
  • real-time domain data can be converted into frequency domain data.
  • the data in the time domain can be subjected to fast Fourier Transform (Fast Fourier Transform, FFT for short) operation, so as to obtain frequency domain data.
  • FFT Fast Fourier Transform
  • X(k) is frequency domain data
  • x(n) is time domain data
  • the range of k is greater than or equal to 0 and less than or equal to N-1
  • n is the sequence number of sampled signal samples
  • N is the number of sampled samples.
  • the physical meaning of transforming from FFT formula (1) to radix-4 FFT formulas (2)-(4) is to calculate the DFT of a long sequence of multiple sampled signals and divide it into multiple shorter sequences of the multiple sampled signals DFT calculation. For example, DFT calculation divided into 4 shorter sequences.
  • the time-domain data to be processed is divided into a groups, and each group includes N/a numbers. Then, an array is taken from each of the a groups to form a data set, and the numbers in the data set are stored in different sub-storage units of the storage unit.
  • the time-domain data to be processed is a plurality of sampled signals, also referred to as source data.
  • the time domain data can be stored in the storage unit in the order in which they are obtained. Specifically, the storage unit stores the time domain data as shown in Table 1 below:
  • Table 1 Time domain data are stored in sub-storage units in order
  • each memory bank includes multiple storage locations for storing time domain data.
  • the memory bank bank(0) includes 4 storage locations, which store time domain data "x(0)”, “x(16)", “x(32)” and “x(48)” respectively.
  • the bank (1) includes 4 storage locations, which store time domain data "x(1)”, “x(17)", “x(33)” and "x(49)” respectively. And so on.
  • the corresponding input data is x(3), x(19), x(35), x(51).
  • the foregoing input data x(0), x(16), x(32), and x(48) are stored in different locations in the same sub-storage unit (for example, bank0).
  • the same sub-storage unit for example, bank0
  • only one location in the same sub-storage unit for example, bank 0
  • the corresponding input data can be obtained. That is, in one access operation, different locations in the same sub-memory unit (for example, bank0) cannot be accessed, and multiple corresponding input data can be obtained.
  • multiple input data stored in different sub-storage units can be read.
  • the input data x(0) stored in bank0, the input data x(1) stored in bank1, and the input data x(2) stored in bank2 can be obtained based on the current access. )and many more.
  • data stored in different locations in the same bank cannot be obtained at the same time.
  • the input data x(0), x(16), x() stored in bank0 cannot be obtained in one access operation. 32), x(48), etc.
  • the aforementioned input data x(1), x(17), x(33), x(49) are stored in different locations in the same memory bank bank1, and then, in order to be able to obtain the aforementioned input data, Need to visit different locations of the same bank1.
  • only one location in the bank bank1 can be accessed. Therefore, only the data located in one storage location in the same bank 1 can be read (for example, input data x(1)).
  • x(1), x(17), x(33 ), x(49) cannot be read at the same time, that is, there is a conflict of data reading.
  • multiple input data that needs to be processed can be read through multiple access cycles. However, this greatly reduces the efficiency of data processing.
  • the aforementioned input data x(2), x(18), x(34), x(50) are stored in different locations in the same sub-storage unit (for example, bank2), and then, in order to be able to obtain To the above-mentioned input data, it is necessary to access different locations of the same sub-storage unit (for example, bank2).
  • the same sub-memory unit for example, bank1
  • data stored in different banks can be read.
  • Only the data located in one storage location in the same memory bank can be read.
  • multiple input data that needs to be processed can be read through multiple access cycles. However, this greatly reduces the efficiency of data processing.
  • the aforementioned input data x(3), x(19), x(35), x(51) are stored in different locations in the same storage unit (bank), and then, in order to be able to obtain the above For input data, you need to access different locations in the same bank.
  • the data stored in different banks can be read, however, only the data stored in the same bank can be read.
  • the data in a storage location in a storage bank cannot be read out at the same time for the above-mentioned multiple data, that is, a data read conflict situation occurs.
  • multiple input data that needs to be processed can be read through multiple access cycles. However, this greatly reduces the efficiency of data processing.
  • this embodiment provides a data processing method, device, removable platform, and storage medium.
  • the method can obtain the to-be-processed time-domain data, where the to-be-processed time-domain data corresponding to the same data set is stored in a plurality of different sub-storage units in the first storage unit.
  • the number of data sets mentioned above can be determined according to the type of fast Fourier transform algorithm; because the time-domain data to be processed is stored in multiple different sub-storage units, data read conflicts are avoided, that is, It can quickly determine multiple time-domain input data corresponding to the fast Fourier transform algorithm, thereby improving the use of fast Fourier transform algorithm to convert multiple time-domain input data to obtain multiple time-domain input data Corresponding to the efficiency of the frequency domain data, this not only solves the problem of data reading conflicts in the Fourier transform process, but also improves the efficiency of data processing.
  • Figure 1 is a schematic flow chart of a data processing method provided by an embodiment of the present invention. referring to Figure 1, this embodiment provides a data processing method, and the execution subject of the method can be a data processing device, which can be understood However, the data processing device can be implemented as software or a combination of software and hardware. Specifically, the data processing method may include:
  • Step S101 Obtain the to-be-processed time-domain data, where the to-be-processed time-domain data corresponding to the same data set is stored in a plurality of different sub-storage units in the first storage unit. Among them, the data set is determined based on the type of fast Fourier transform algorithm.
  • Step S102 In a data access operation, read the to-be-processed time-domain data corresponding to the same data set from the multiple different sub-storage units as a fast Fourier transform algorithm in a fast Fourier transform algorithm. Transform the corresponding multiple input data in the time domain.
  • Step S103 Use a fast Fourier transform algorithm to perform conversion processing on multiple time-domain input data used for fast Fourier transform to obtain frequency-domain data corresponding to the multiple time-domain input data.
  • Step S101 Obtain the to-be-processed time-domain data, where the to-be-processed time-domain data corresponding to the same data set is stored in a plurality of different sub-storage units in the first storage unit.
  • the data set is determined based on the type of fast Fourier transform algorithm.
  • the data set includes input data used to implement a Fourier transform operation.
  • the time-domain data to be processed refers to the time-domain data that needs to be processed for data conversion. It is understandable that the time-domain data to be processed can have different expressions based on different application scenarios, for example: in image processing applications
  • the time-domain data to be processed may include image data to be processed; or, in an application scenario of data transmission, the time-domain data to be processed may refer to a data signal to be transmitted, and so on.
  • obtaining the time-domain data to be processed includes a plurality of sampled signal samples.
  • the acquired time-domain data to be processed is multiple, and the time-domain data to be processed corresponds to different data sets.
  • this embodiment does not limit the specific implementation of acquiring the time-domain data to be processed, and those skilled in the art can set it according to specific application requirements and design requirements, for example: when the time-domain data to be processed is image data to be processed
  • the data processing device can be in communication with the camera. After the camera captures the image data to be processed, the data processing device can obtain the image data to be processed through the camera. Specifically, the data processing device can actively obtain the image data from the camera. The image data to be processed, or the photographing device can actively send the image data to be processed to the image processing device, so that the data processing device can obtain the image data to be processed.
  • the time-domain data to be processed may be stored in a preset area, and the data processing device may obtain the time-domain data to be processed by accessing the preset area.
  • the data processing device may obtain the time-domain data to be processed by accessing the preset area.
  • those skilled in the art may also use other methods to obtain the time-domain data to be processed, as long as the accuracy and reliability of the time-domain data to be processed can be ensured, which will not be repeated here.
  • the number of time-domain data to be processed can be one or more.
  • multiple time-domain data to be processed can form a data sequence.
  • the processed time domain data is stored in the first storage unit according to the data sequence, so that the time domain data to be processed can be read and processed, that is, the data processing device can obtain the time domain data to be processed by accessing the first storage unit.
  • multiple time-domain data to be processed can correspond to multiple data sets.
  • the data sets here are determined based on the type of fast Fourier transform algorithm .
  • the type of fast Fourier transform algorithm may include radix-2 FFT algorithm, radix-4 FFT algorithm, radix-6 FFT algorithm, radix-8 FFT algorithm, etc.
  • the data processing parallelism is 16, and the time domain data to be processed includes x0-x63 as an example.
  • the data set corresponding to the fast Fourier transform algorithm The number is 16, specifically, the time-domain data to be processed included in the data set are as follows: ⁇ x(0), x(16), x(32), x(48) ⁇ , ⁇ x(1), x(17), x(33), x(49)), (x(2), x(18), x(34), x(50)), (x(3), x(19), x (35), x(51)), (x(4), x(20), x(36), x(52)), (x(5), x(21), x(37), x( 53) ⁇ , ⁇ x(6), x(22), x(38), x(54) ⁇ , ⁇ x(7), x(23), x(39), x(55) ⁇ , (x (8), x
  • the time-domain data to be processed corresponds to 16 data sets, that is, the time-domain data to be processed can be converted through the radix-4 FFT algorithm.
  • the number of data sets is not limited to the number information exemplified above, and those skilled in the art can set arbitrarily according to specific application requirements, design requirements, and specific types of fast Fourier transform algorithms, as long as they can It is sufficient to ensure that the data set corresponds to the fast Fourier transform algorithm, and will not be repeated here.
  • Step S102 In a data access operation, read the to-be-processed time-domain data corresponding to the same data set from a plurality of different sub-storage units, as the one-time fast Fourier transform algorithm in the fast Fourier transform algorithm. Transform the corresponding multiple input data in the time domain. It should be noted that one fast Fourier transform corresponds to sampling signal samples in a sampling sequence.
  • multiple time-domain input data corresponding to one fast Fourier transform can be determined in the time-domain data to be processed.
  • the fast Fourier transform algorithm can be expressed by multiple FFT formulas.
  • multiple time-domain data to be processed of one FFT formula can correspond to a data set.
  • the multiple to-be-processed time-domain data of each of the multiple different FFT formulas may correspond to different data sets.
  • multiple time-domain input data corresponding to the fast Fourier transform algorithm can be determined in the time-domain data to be processed.
  • the time-domain data to be processed includes x(0) ⁇ x(63) stored in 16ram (bank0-bank15) as an example.
  • the time-domain data to be processed corresponds to 16 data sets, and each data set can correspond to an FFT formula algorithm.
  • the to-be-processed time-domain data stored in the first storage unit for example, 16ram
  • multiple time-domain input data corresponding to the radix-4 FFT algorithm can be acquired.
  • the multiple time-domain input data mentioned above may include: x(n), with Among them, n is greater than or equal to 0 and less than or equal to The value of, thereby effectively realizing that the to-be-processed time-domain data corresponding to the same data set can be read from the multiple different sub-storage units in one data access operation, as a comparison with the fast Fourier transform Multiple time-domain input data corresponding to one fast Fourier transform in the algorithm.
  • Step S103 Use a fast Fourier transform algorithm to perform conversion processing on multiple time-domain input data used for fast Fourier transform to obtain frequency-domain data corresponding to the multiple time-domain input data.
  • the fast Fourier transform algorithm can be used to perform fast Fourier transform processing on the multiple time-domain input data. It is understandable that the number of fast Fourier transform processing operations can be Once or multiple times, frequency domain data corresponding to multiple time domain input data can be obtained, and the number of obtained frequency domain data can correspond to multiple time domain input data.
  • the fast Fourier transform algorithm is the base-4 FFT algorithm
  • the data processing parallelism is 16
  • the time-domain data to be processed includes x0-x63 as an example.
  • Time-domain data is processed quickly and accurately.
  • the above formulas (6), (8), (10), (12) are matrix multiplications, and the above formulas (7), (9), (11), (13) are dot multiplications.
  • the data read each time described above may be completed in 4 clock cycles. Among them, the data read each time above corresponds to 4 different data sets.
  • the time-domain data to be processed in each of the four different data sets are stored in different sub-storage units of the storage unit.
  • each of the above-mentioned data reads may be completed in one time period, and each of the above-mentioned data reads corresponds to a data set.
  • the time-domain data to be processed in the data set is stored in different sub-storage units of the storage unit.
  • the number of sets corresponding to one fast Fourier transform is equal to the number of clock cycles corresponding to one operation of reading data.
  • the Fourier coefficients in formulas (7), (9), (11), (13) are stored in a plurality of storage subunits (for example, memory banks).
  • the multiple time-domain input data may include: x(n), with Among them, n is greater than or equal to 0 and less than or equal to Value.
  • x(0), x(16), x(32), x(48) are respectively stored in multiple different sub-storage units of the first storage unit, that is, multiple time domain inputs
  • the data is stored in different storage bodies, that is, multiple time-domain input data corresponding to one fast Fourier transform can be accessed in one access operation, thereby solving the data existing in the Fourier transform process
  • the problem of reading conflicts also improves the efficiency of data processing, further improves the practicability of the method, and is conducive to market promotion and application.
  • Fig. 2 is a schematic diagram of the process of obtaining to-be-processed time-domain data in Fig. 1; on the basis of the above-mentioned embodiment, with continued reference to Fig. 2, this embodiment does not limit the specific implementation of obtaining to-be-processed time-domain data Those skilled in the art can make settings according to specific application requirements and design requirements.
  • obtaining the to-be-processed time-domain data in this embodiment may include:
  • Step S201 Obtain original time domain data.
  • Step S202 Store the original time domain data in the first storage unit in a preset order.
  • Step S203 Perform data arrangement processing on the original time domain data to obtain to-be-processed time-domain data, where the to-be-processed time-domain data corresponding to the same data set is stored in a plurality of different sub-storage units in the first storage unit.
  • the specific implementation manner of acquiring the original time-domain data in this embodiment is similar to the foregoing specific implementation manner of acquiring the to-be-processed time-domain data.
  • the foregoing statement content please refer to the foregoing statement content, which will not be repeated here.
  • the original time domain data can be stored in the first storage unit in a preset order, where the preset order can be used to identify the storage order of the original time domain data.
  • the aforementioned preset order Assuming that the sequence may be related to the data identification of the original time domain data, it can be understood that the above-mentioned data identification may include any one of the following: a time identification and a preset sequence identification.
  • the aforementioned data identifier is the variable n in x(n).
  • performing data arrangement processing on the original time-domain data in this embodiment to obtain the to-be-processed time-domain data may include:
  • Step S301 Obtain original address information corresponding to the original time domain data.
  • Step S302 Perform update processing on the original address information to obtain updated address information corresponding to the original time domain data.
  • Step S303 Store the original time domain data based on the updated address information, and obtain the time domain data to be processed.
  • the original time domain data can be stored in the storage unit, and the original address information corresponding to the original time domain data can be obtained.
  • the specific implementation of the original address information is not limited. Those skilled in the art can set it according to specific application scenarios and application requirements. For example, the mapping relationship between the original time domain data and the original address information is pre-configured with The original time domain data can determine the original address information corresponding to the original time domain data.
  • the original address information can be updated to obtain updated address information corresponding to the original time domain data.
  • performing update processing on the original address information in this embodiment to obtain updated address information corresponding to the original time domain data may include:
  • Step S401 Determine the data processing parallelism corresponding to the original time domain data.
  • Step S402 The original address information is updated based on the data processing parallelism, and the updated address information corresponding to the original time domain data is obtained.
  • the data processing parallelism is used to identify the maximum amount of data that can be implemented for data processing operations in the same fast Fourier transform-related data processing operation.
  • the first data included in the data processing device can be determined according to the maximum data.
  • the number of a storage unit is determined. That is, the number of first storage units can be determined according to the parallel degree of data processing corresponding to the original time domain data.
  • the data processing parallelism corresponding to the original time-domain data is the same as the number of first storage units, or the data processing parallelism corresponding to the original time-domain data is less than the number of first storage units.
  • At least 16 random access memory (Random Access Memory, abbreviated ram) memory banks are set in the data processing device to be used based on The corresponding fast Fourier transform algorithm performs data conversion processing.
  • the data processing device is provided with at least 32 ram-related memory banks for data conversion based on the corresponding fast Fourier transform algorithm deal with.
  • the data processing device includes at least 64 ram-related memory banks for data conversion processing based on the corresponding fast Fourier transform algorithm .
  • the original address information can be updated based on the data processing parallelism. Specifically, the following formula can be used to implement the update processing operation, so that the original time domain data can be obtained. Update address information corresponding to the data:
  • P N (A) is the update address information corresponding to the original time domain data
  • A is the original address information corresponding to the original time domain data.
  • A is 0,1,2,3,4,... , N-1, N are preset parameter variables; B is the parallel degree of data processing corresponding to the original time domain data, "[]" is the rounding function, and "%" is the remainder function.
  • B is 4 or 16. It should be noted that the update processing operation when B takes a different value can be obtained by the above-mentioned similar method.
  • the original time domain data can be stored in a sub-storage unit (for example, a memory bank) in a preset order, specifically, as shown in Table 2 below:
  • Table 2 Store the original time domain data in the sub-storage unit
  • each memory bank includes multiple storage locations for storing original time domain data.
  • the bank (0) includes 4 storage locations, which store the original time domain data "x(0)”, “x(16)", “x(32)” and “x(48)” respectively.
  • the bank (1) includes 4 storage locations, which store the original time domain data "x(1)”, “x(17)", “x(33)” and "x(49)” respectively. And so on.
  • the original address information corresponding to the original time domain data can be obtained, and then the original address information can be updated to obtain the updated address information corresponding to the original time domain data, and based on the updated address information
  • the original time domain data is stored, so that the time domain data to be processed can be obtained.
  • the time domain data to be processed corresponding to the same data set is stored in different sub-storage units. Specifically, as shown in Table 3 below:
  • Table 3 Store the to-be-processed time domain data in the sub-storage unit
  • each memory bank includes multiple storage locations for storing time-domain data to be processed.
  • the bank (0) includes 4 storage locations, which store the time-domain data "x(0)”, “x(21)", “x(42)” and “x(63)” to be processed, respectively.
  • the bank (1) includes 4 storage locations, which store the time-domain data "x(1)”, “x(20)", “x(43)” and "x(62)” to be processed, respectively. And so on.
  • the input data corresponding to the FFT formula is x(0), x(16), x(32), x(48), at this time, x(0) is stored in the bank(0) ) In the first area, x(16) is stored in the second area in bank(4), x(32) is stored in the third area in bank(8), x(48) It is stored in the fourth area in the bank (12).
  • the input data located in different banks can be obtained through one access operation, thereby solving the conflict situation when reading the data, and further ensuring the processing of the time domain data. Analysis and processing efficiency.
  • FIG. 5 is a schematic diagram of the process of determining multiple time-domain input data corresponding to the fast Fourier transform algorithm in the time-domain data to be processed in Figure 1; It is shown that this embodiment does not limit the specific implementation of determining multiple time-domain input data corresponding to the fast Fourier transform algorithm in the time-domain data to be processed, and those skilled in the art can according to specific application requirements and The design requirements are set.
  • determining multiple time-domain input data corresponding to the fast Fourier transform algorithm may include:
  • Step S501 Obtain data address information of multiple time-domain input data corresponding to the fast Fourier transform algorithm.
  • Step S502 In the time-domain data to be processed, a plurality of time-domain input data corresponding to the fast Fourier transform algorithm is determined based on the data address information.
  • the data address information of the multiple time-domain input data corresponding to the fast Fourier transform algorithm can be obtained first, so that it can be based on the data
  • the address information determines multiple time-domain input data corresponding to the fast Fourier transform algorithm.
  • the data address information for acquiring multiple time-domain input data corresponding to the fast Fourier transform algorithm in this embodiment may include:
  • Step S601 Obtain the original address information of the time domain data to be processed.
  • Step S602 Determine a target data set corresponding to the fast Fourier transform algorithm.
  • the target data set includes multiple time-domain data to be processed.
  • Step S603 Update the original address information of the multiple to-be-processed time-domain data included in the target data set, and obtain the data address information of the multiple time-domain input data corresponding to the fast Fourier transform algorithm.
  • the time-domain data to be processed may include time-domain data corresponding to multiple data sets, at this time, in order to accurately obtain the data addresses of multiple time-domain input data corresponding to the fast Fourier transform algorithm Information, after obtaining the time-domain data to be processed, the original address information of the time-domain data to be processed can be obtained based on the mapping relationship between the time-domain data to be processed and the original address information.
  • the target data set corresponding to the fast Fourier transform algorithm can be determined. It is understandable that the target data set may include multiple time-domain data to be processed, and then the target data set can be The original address information of the multiple time-domain data to be processed included in the data set is updated, so that the data address information of multiple time-domain input data corresponding to the fast Fourier transform algorithm can be obtained.
  • radix-4 FFT the fast Fourier algorithm
  • the target data set corresponding to the Fourier transform formula can be determined.
  • the target data set corresponding to the formula includes multiple time-domain input data.
  • the multiple time-domain input data may include the following: x(1), x(17), x(33), and x(48).
  • the target data set corresponding to the above Fourier transform formula includes multiple time-domain input data.
  • the multiple time-domain input data may include the following: x(2), x(18), x (34) and x(49) and so on.
  • step S601 can be executed after step S602, or step S601 can be executed simultaneously with step S602.
  • step S601 can be executed after step S602, or step S601 can be executed simultaneously with step S602.
  • the original address information of the multiple to-be-processed time-domain data included in the target data set is updated to obtain the data corresponding to the fast Fourier transform algorithm.
  • the data address information of each time domain input data can include:
  • Step S701 Obtain the set quantity of the data set.
  • Step S702 Based on the number of sets, the original address information of the multiple to-be-processed time domain data included in the target data set is updated, and the data address information of the multiple time domain input data corresponding to the fast Fourier transform algorithm is obtained.
  • the number of data sets can be obtained first.
  • Leaf transform algorithm is related, that is, after the fast Fourier transform algorithm is determined, the number of data sets can be determined based on the fast Fourier transform algorithm.
  • the fast Fourier transform algorithm is a radix-4 FFT algorithm
  • the data The number of sets of sets can be 16 (that is, 64/4); or, when the fast Fourier transform algorithm is a radix-16 FFT algorithm, the number of sets of data sets can be 4 and so on.
  • the original address information of the multiple to-be-processed time domain data included in the target data collection can be updated based on the collection quantity to obtain multiple time domain data corresponding to the fast Fourier transform algorithm.
  • the data address information of the domain input data specifically, can be implemented based on the following formula to update the original address information of the multiple to-be-processed time-domain data included in the target data set based on the number of sets:
  • a ⁇ N d is the data address information of multiple time-domain input data corresponding to the fast Fourier transform algorithm
  • A is the original address information of multiple time-domain data to be processed
  • N is the preset parameter variable
  • d is The number of data sets
  • "[]” is the rounding function
  • "%" is the remainder function.
  • the acquisition and fast Fourier transform are effectively guaranteed.
  • the accuracy and reliability of the data address information of multiple time-domain input data corresponding to the algorithm further improves the efficiency of data conversion processing.
  • Fig. 8 is a schematic flow chart of using the fast Fourier transform algorithm to convert multiple time-domain input data to obtain frequency-domain data corresponding to the multiple time-domain input data in Fig. 1; on the basis of the foregoing embodiment Continuing to refer to FIG. 8, this embodiment provides an implementation method for obtaining frequency-domain data corresponding to multiple time-domain input data.
  • the fast Fourier transform algorithm is used in this embodiment to The conversion processing of multiple time domain input data to obtain frequency domain data corresponding to the multiple time domain input data may include:
  • Step S801 Obtain Fourier coefficients corresponding to multiple time-domain input data.
  • Step S802 Perform fast Fourier transform conversion processing on the multiple time domain input data based on the Fourier coefficients corresponding to the multiple time domain input data and the fast Fourier transform algorithm to obtain A plurality of intermediate frequency domain data corresponding to the plurality of time domain input data.
  • Step S803 Obtain Fourier coefficients corresponding to the plurality of intermediate frequency domain data. as well as
  • Step S804 Perform fast Fourier transform conversion processing on the plurality of intermediate frequency domain data based on the Fourier coefficients corresponding to the plurality of intermediate frequency domain data and the fast Fourier transform algorithm to obtain The plurality of frequency domain data corresponding to the plurality of time domain input data.
  • the plurality of intermediate frequency domain data are stored in the first storage unit or the third storage unit.
  • the multiple time-domain input data can be analyzed and processed, so that Fourier coefficients corresponding to the multiple time-domain input data can be obtained.
  • a mapping relationship/mapping table used to identify the correspondence between multiple time-domain input data and Fourier coefficients is pre-configured, and then it can be determined by the above-mentioned mapping relationship/mapping table and multiple time-domain input data Fourier coefficients corresponding to multiple input data in the time domain.
  • mapping table for identifying the correspondence between multiple time-domain input data and Fourier coefficients is pre-configured.
  • mapping table is as follows:
  • each memory bank includes multiple storage locations for storing Fourier coefficients.
  • the bank B0 includes 4 storage locations, which store the Fourier coefficients "1", “1", “1” and “1" respectively.
  • Bank B1 includes 4 storage locations, which store the Fourier coefficient "1" respectively, with And so on.
  • the Fourier coefficients in Table 4 correspond to the Fourier coefficients in formulas (7), (9), (11), and (13).
  • the corresponding multiple Fourier coefficients are read from different storage subunits (for example, storage banks) in one fast Fourier transform. Among them, these Fourier coefficients correspond to multiple time-domain input data of the same data set.
  • B0 to B15 are used to identify different memory banks, that is, memory banks B0 to B15.
  • the storage address corresponding to the Fourier coefficients can be obtained by the following formula:
  • F(A) is the address information corresponding to the Fourier coefficients corresponding to multiple time-domain input data
  • A is 0,1,2,3,4,..., N-1,L is used to identify
  • fast Fourier transform processing can be performed on the multiple time-domain input data based on the Fourier coefficients corresponding to the multiple time-domain input data and the fast Fourier transform algorithm to obtain the Multiple intermediate frequency domain data corresponding to multiple time domain input data; After the intermediate frequency domain data is obtained, the Fourier coefficients corresponding to the multiple intermediate frequency domain data can be obtained.
  • the specific implementation of the Fourier coefficients corresponding to the multiple intermediate frequency domain data is similar to the above-mentioned specific implementation of obtaining the Fourier coefficients corresponding to the multiple time-domain input data. For details, please refer to the above statement. No longer.
  • the Fourier coefficients corresponding to the plurality of intermediate frequency domain data and the fast Fourier transform algorithm may be used to perform the calculation on the
  • the multiple intermediate frequency domain data are subjected to fast Fourier transform conversion processing to obtain multiple frequency domain data corresponding to the multiple intermediate frequency domain data.
  • multiple intermediate frequency domain data are stored in the first storage unit or the third storage unit.
  • multiple time-domain input data includes x(0), x(16), x(32), x(48)
  • the Fourier coefficients corresponding to the multiple time-domain input data are obtained, and then Based on the above Fourier coefficients and the formula corresponding to the fast Fourier transform algorithm, multiple time-domain input data can be converted and processed, so that it can be obtained with x(0), x(16), x(32), x (48)
  • Corresponding multiple intermediate frequency domain data assuming that the multiple intermediate frequency domain data includes b(0), b(16), b(32), b(48).
  • the Fourier coefficients corresponding to the aforementioned multiple intermediate frequency domain data can be determined, and then the Fourier coefficients and the formula corresponding to the fast Fourier transform algorithm can be compared based on the aforementioned Fourier coefficients and the fast Fourier transform algorithm.
  • a plurality of time-domain input data are converted, so as to obtain a plurality of frequency-domain data corresponding to b(0), b(16), b(32), b(48), and obtain the data corresponding to the plurality of intermediate frequency
  • the multiple frequency-domain data corresponding to the multiple time-domain data effectively realizes that by performing multiple fast Fourier transform processing on multiple time-domain input data, all the data corresponding to the multiple time-domain input data are obtained.
  • the stability and reliability of the multiple frequency domain data further improves the stability and reliability of the method.
  • FIG. 9 is a schematic flowchart of another data processing method provided by an embodiment of the present invention. on the basis of the foregoing embodiment, referring to FIG. Before coefficients, the method in this embodiment may also include:
  • Step S901 Obtain the coefficient storage order corresponding to the Fourier coefficient.
  • Step S902 Store the Fourier coefficients in the second storage unit based on the coefficient storage order.
  • the coefficient storage order corresponding to the Fourier coefficients can be obtained, and then the Fourier coefficients can be stored based on the coefficient storage order In the second storage unit.
  • the second storage unit and the above-mentioned first storage unit may be different storage units, so that the time domain data to be processed can be obtained through the first storage unit, and the Fourier storage unit can be obtained through the second storage unit. Coefficient so that the Fourier transform operation of the time-domain data to be processed can be realized in the same access operation cycle.
  • this embodiment does not limit the specific implementation for obtaining the storage order of the coefficients corresponding to the Fourier coefficients. Those skilled in the art can set it according to specific application requirements and design requirements. Preferably, refer to FIG. 10 As shown, in this embodiment, obtaining the coefficient storage order corresponding to the Fourier coefficient may include:
  • Step S1001 Determine the data storage sequence corresponding to multiple time domain input data.
  • Step S1002 Determine the coefficient storage order corresponding to the Fourier coefficients according to the data storage order.
  • the data storage order corresponding to the multiple time-domain input data may be the same or the same as the coefficient storage order corresponding to the Fourier coefficients. correspond.
  • the data storage sequence corresponding to the multiple time-domain input data can be determined. Specifically, this embodiment is for determining the data corresponding to the multiple time-domain input data.
  • the specific implementation method of storing data is not limited. Those skilled in the art can set according to specific application requirements and design requirements. For example, a data storage sequence corresponding to multiple time-domain input data is pre-configured, and the data storage sequence can be Stored in the preset area, the data storage sequence corresponding to multiple time domain input data can be obtained by accessing the preset area.
  • the coefficient storage order corresponding to the Fourier coefficients can be determined according to the data storage order. Specifically, the data storage order can be the same as the coefficient storage order corresponding to the Fourier coefficients.
  • the preset sequence of input data in multiple time domains includes data d0, data d1, data d2, and data d3, and the sub-storage unit includes: unit a0, unit a1, unit a2, and unit a3, if the above multiple
  • the data storage sequence corresponding to the time domain input data is "0, 2, 1, 3"
  • the data d0 can be stored in unit a0
  • the data d2 is stored in the cell a1
  • the data d1 is stored in the cell a2
  • the data d3 is stored in the cell a3.
  • the coefficient storage order corresponding to the Fourier coefficient can also be determined as "0, 2, 1, 3", which effectively guarantees the accuracy and reliability of obtaining the coefficient storage order corresponding to the Fourier coefficient.
  • the Fourier coefficients can be stored in the second storage unit based on the coefficient storage order, so that when multiple time-domain input data are converted, multiple time-domain input data can be obtained.
  • the corresponding Fourier coefficients ensure the stability and reliability of the conversion processing of multiple time-domain input data.
  • the method in this embodiment may further include:
  • Step S1100 Perform code bit reading processing on the frequency domain data to obtain target frequency domain data corresponding to the frequency domain data.
  • the identification sequence corresponding to multiple time domain input data is sequence 1.
  • the order of identification is adjusted, that is, order 1 is adjusted to order 2.
  • frequency domain data corresponding to multiple time domain input data can be obtained.
  • the identification sequence corresponding to the obtained frequency domain data is sequence 3. It can be understood that the identification sequence (sequence 3) of frequency domain data corresponds to the identification sequence (sequence 2) of multiple time domain input data.
  • the time domain input data includes x0, x1, x2, and x3 in sequence 1, and the sequence of the time domain input data is adjusted from sequence 1 to sequence 2 after converting the multiple time domain input data.
  • the input data in the time domain can be x0, x2, x1, and x3 in sequence according to sequence 2.
  • frequency domain data corresponding to multiple time domain input data can be obtained.
  • the identification sequence corresponding to the obtained frequency domain data is sequence 3.
  • the identification sequence of the frequency domain data corresponds to the identification sequence (sequence 2) of multiple time domain input data, that is, the frequency domain data can be y0, y2, y1, and y3 in sequence according to the sequence 3.
  • the identification sequence corresponds to the identification sequence (sequence 1) of multiple time-domain input data, which helps users to know the data processing results corresponding to multiple time-domain data in time, and further improves the practicality of data processing reliability.
  • FIG. 11 is a schematic flowchart of another data processing method provided by an embodiment of the present invention. on the basis of the above embodiment, referring to FIG. 11, after obtaining the target frequency domain data corresponding to the frequency domain data, The method in this embodiment may further include:
  • Step S1101 Perform data arrangement processing on the target frequency domain data to obtain processed target frequency domain data.
  • Step S1102 Store the processed target frequency domain data in the third storage unit.
  • the target frequency domain data After obtaining the target frequency domain data, the target frequency domain data can be subjected to data arrangement processing operations to obtain the processed target frequency domain data, and then the processed target frequency domain data can be stored in the third storage unit. It is understood that the above-mentioned third storage unit may be the same storage unit as the first storage unit, or may be a different storage unit, so that the processed target frequency domain data can be read or recalled through the third storage unit.
  • performing data arrangement processing on the target frequency domain data in this embodiment, and obtaining the processed target frequency domain data may include:
  • Step S1201 Obtain the original data address corresponding to the target frequency domain data.
  • Step S1202 Perform update processing on the original data address to obtain an updated data address corresponding to the target frequency domain data.
  • Step S1203 Store the target frequency domain data based on the updated data address, and obtain processed target frequency domain data.
  • the original data address corresponding to the target frequency domain data can be obtained, and the original data address may be the storage address information directly obtained after the data conversion operation is performed. Then, the original data address can be updated to obtain the update data address corresponding to the target frequency domain data; specifically, referring to FIG. 13, the original data address is updated in this embodiment to obtain the update data address corresponding to the target frequency domain data.
  • the update data address corresponding to the frequency domain data may include:
  • Step S1301 Determine the data processing parallelism corresponding to the target frequency domain data.
  • Step S1302 The original data address is updated based on the data processing parallelism, and the updated data address corresponding to the target frequency domain data is obtained.
  • the data processing parallelism corresponding to the target frequency domain data can be determined.
  • the specific implementation method of determining the data processing parallelism corresponding to the target frequency domain data is the same as the foregoing embodiment.
  • the specific implementation method for determining the parallelism of data processing corresponding to the original time-domain data is similar to the specific implementation of the data processing parallelism in the original time domain data. For details, please refer to the foregoing statement content, which will not be repeated here.
  • the original data address can be updated based on the data processing parallelism, so that the updated data address corresponding to the target frequency domain data can be obtained.
  • the update operation of the original data address can be realized by the following formula:
  • P N (C) is the update data address corresponding to the target frequency domain data
  • C is the original data address corresponding to the target frequency domain data.
  • C is 0,1,2,3,4,... , N-1, N are preset parameter variables; D is the parallel degree of data processing corresponding to the target frequency domain data, "[]" is the rounding function, and "%" is the remainder function.
  • B is 4 or 16. It should be noted that the update processing operation when B takes a different value can be obtained by the above-mentioned similar method.
  • the original data address is updated through the above formula, thereby effectively ensuring the accuracy and reliability of obtaining the updated data address corresponding to the target frequency domain data.
  • the target frequency domain data can be stored based on the update data address, so that the processed target frequency domain data can be obtained based on the update data address.
  • the identification sequence of the target frequency domain data can satisfy The user's usage requirements and viewing requirements help the user to obtain the target frequency domain data corresponding to multiple time domain data in a timely and fast manner, and further improve the practical reliability of data processing.
  • FIG. 14 is a schematic flowchart of yet another data processing method provided by an embodiment of the present invention. on the basis of any of the foregoing embodiments, and with continued reference to FIG. 14, the method in this embodiment may further include:
  • Step S1401 Obtain the number of product parameters corresponding to the fast Fourier transform algorithm.
  • Step S1402 Determine the number of multiple sub-storage units in the first storage unit based on the number of product parameters.
  • product parameters corresponding to the fast Fourier transform algorithm will appear.
  • the number of product parameters corresponding to the fast Fourier transform algorithm can be obtained, and then the number of first storage units can be determined based on the number of product parameters.
  • Base 4fft requires 16 multipliers, corresponding to 4 points. When the number of multiplications is 64, the number of memory banks is 16 to be able to fully utilize the multipliers.
  • FIG. 15 is a schematic flowchart of yet another data processing method provided by an embodiment of the present invention. on the basis of any of the foregoing embodiments, with continued reference to FIG. 15, the method in this embodiment may further include:
  • Step S1501 Obtain the number of product parameters corresponding to the fast Fourier transform algorithm.
  • Step S1502 Determine the number of sub-storage units in the second storage unit based on the number of product parameters.
  • multiple layers of Fourier transform processing may be included, that is, the data processing device may include multiple data for realizing the fast Fourier transform algorithm.
  • Conversion unit multiple data conversion units are serially connected in sequence, so that the next-level data conversion unit can obtain the output result of the upper-level data conversion unit, for example: the first-level data conversion unit can process the acquired
  • the time-domain data is converted to obtain processing result 1, and then the processing result 1 can be input to the data conversion unit of the second layer.
  • the processing result 1 can be converted Processing, so as to realize the multi-layer Fourier transform processing of the data to be processed.
  • a preset number of sub-storage units in the second storage unit can be configured.
  • the sub-storage unit in the storage unit can be used to store various data generated during the Fourier transform process, thereby improving the efficiency of the data conversion process.
  • this application embodiment provides a data processing method that can convert time-domain data into frequency-domain data; where the number of time-domain data to be processed is 64, and the fast Fourier transform
  • the algorithm is the radix-4 FFT algorithm as an example.
  • the storage unit 0, the storage unit 1 and the storage unit 2 are pre-configured.
  • the aforementioned storage unit 0 and storage unit 2 are used to store the time domain data to be processed and the time domain data.
  • the process data that appears in the process of data analysis and processing, and the final processing result of the time domain data conversion can be stored in storage unit 0 or storage unit 2.
  • the final The storage location of the processing result is related to the number of data processing layers included in the radix-4 FFT algorithm; and the above-mentioned storage unit 1 is used to store the Fourier coefficients for Fourier transform processing.
  • the aforementioned storage unit 0, storage unit 1, and storage unit 2 may include multiple storage banks (for example, 16 storage banks), and the aforementioned storage unit 0 and storage unit 2 can be used for storage in the fast Fourier
  • the leaf transformation algorithm is used to process the data that appears in the process of data processing.
  • the data processing method may include the following steps:
  • Step 1 Obtain the raw data to be processed, and store the raw data in storage unit 0.
  • the storage unit 0 is a pre-configured storage interval for storing original data.
  • the above-mentioned original data refers to the time domain data directly obtained by Fourier transform processing.
  • the conversion process can obtain the frequency domain data corresponding to the time domain data.
  • the raw data may be stored in the storage unit 0 in a preset order, that is, the storage unit 0 stores the raw data used for the Fourier transform operation.
  • the storage information of the original data in storage unit 0 is shown in the following table a:
  • Step 2 Obtain the original data located in the storage unit 0, perform data preprocessing operations on the original data, obtain the to-be-processed time-domain data, and store the to-be-processed time-domain data in the storage unit 2.
  • the original data in order to avoid the occurrence of data read conflicts, data preprocessing operations can be performed on the original data, so that the to-be-processed time-domain data corresponding to the same data set is stored in different banks in the storage unit 2.
  • the above-mentioned data set corresponds to the fast Fourier transform algorithm.
  • the original data is obtained from the storage unit 0.
  • the original data can be arranged and processed to obtain the to-be-processed time-domain data, and then the to-be-processed time-domain data can be It is stored in the storage unit 2.
  • the to-be-processed time-domain data corresponding to the same data set is stored in a different bank in the storage unit 2.
  • a ⁇ N d is the data address information of the time-domain data to be processed corresponding to the fast Fourier transform algorithm
  • A is the original address information of the original data
  • N is the preset parameter variable
  • d is the number of data sets.
  • “[]” is the rounding function
  • "%” is the remainder function.
  • the to-be-processed time-domain data can be analyzed and processed by the following formula (that is, the data is out of order), and then the processed and to-be-processed time-domain data can be stored in In storage unit 2:
  • P N (A) is the update address information corresponding to the time-domain data to be processed
  • A is the data address information corresponding to the time-domain data to be processed, specifically, A is 0,1,2,3,4 ,..., N-1, N are preset parameter variables
  • B is the parallel degree of data processing corresponding to the time-domain data to be processed
  • "[]" is the rounding function
  • "%" is the remainder function.
  • B is 4 or 16. It should be noted that the update processing operation when B takes a different value can be obtained by the above-mentioned similar method.
  • Step 3 Obtain Fourier coefficients corresponding to multiple time-domain input data.
  • the storage unit 1 stores the Fourier coefficients corresponding to multiple time-domain input data, so that the Fourier coefficients corresponding to the multiple time-domain input data can be obtained from the storage unit 1, so as to be based on the Fourier coefficients.
  • the inner coefficients are subjected to Fourier transform processing on the time-domain data to be processed.
  • the Fourier coefficients can be stored in the storage unit 1 in a preset order.
  • the following can be used: Formula for storage space allocation and storage operations:
  • F(A) is the address information corresponding to the Fourier coefficients corresponding to multiple time-domain input data
  • A is 0,1,2,3,4,..., N-1,L is used to identify
  • Step 4 Perform FFT processing on the time-domain data to be processed based on Fourier coefficients and fast Fourier transform algorithm to obtain processing result 1.
  • the three-time FFT processing on the time-domain data to be processed can be taken as an example.
  • the three data conversion units are serially connected in sequence so that the data conversion unit of the next level can obtain the output result of the data conversion unit of the previous level.
  • Fourier coefficients corresponding to multiple time-domain input data are obtained through the storage unit 1, and the time-domain data to be processed are obtained through the storage unit 2, and then fast Fourier coefficients can be used.
  • the transformation algorithm and the Fourier coefficients perform the FFT-first layer processing operation on the time-domain data to be processed, so that the processing result 1 can be obtained.
  • the processing result 1 can be stored in storage unit 0, namely Use the processing result 1 to update the original data stored in the storage unit 0.
  • P N (A) is the updated address information corresponding to the time-domain data to be processed
  • A is the original address information corresponding to the time-domain data to be processed, specifically, A is 0,1,2,3,4 ,..., N-1, N are preset parameter variables
  • B is the parallel degree of data processing corresponding to the time-domain data to be processed
  • "[]” is the rounding function
  • "%" is the remainder function.
  • dst[a+0] (src[a]+src[a+1]+src[a+2]+src[a+3]) ⁇ coeff[a+0];
  • dst[a+2] (src[a]-src[a+1] ⁇ i-src[a+2]+src[a+3] ⁇ i) ⁇ coeff[a+1];
  • dst[a+1] (src[a]-src[a+1]+src[a+2]-src[a+3]) ⁇ coeff[a+2];
  • dst[a+3] (src[a]+src[a+1] ⁇ i-src[a+2]-src[a+3] ⁇ i) ⁇ coeff[a+3].
  • dst[a+0], dst[a+2], dst[a+1], dst[a+3] are the processing results corresponding to the time-domain data to be processed 1
  • src[a], src [a+1], src[a+2], src[a+3] are the time-domain data to be processed
  • coeff[a+0] is the Fourier coefficient.
  • the processing result 1 can be stored according to (0,2,1,3). Therefore, in order to ensure the convenience of reading the processing result 1, you can The processing result 1 is subjected to code bit reverse reading processing, so that the identification sequence of the processing result 1 can be consistent with the identification sequence of the original data.
  • time-domain data to be processed is processed by FFT
  • the storage of the time-domain data to be processed is as shown in Table b above
  • the time-domain data to be processed is processed by FFT based on the Fourier coefficients and fast Fourier transform algorithm
  • the obtained processing result 1 is subjected to data out-of-order processing, so that the identification sequence corresponding to the processing result 1 is the same as the above-mentioned table b.
  • Step 5 Perform FFT processing on processing result 1 based on Fourier coefficients and fast Fourier transform algorithm to obtain processing result 2.
  • the Fourier coefficients corresponding to multiple time-domain input data are obtained from the storage unit 1, and the processing result 1 is obtained from the storage unit 0, and then the fast Fourier transform can be used.
  • the algorithm and Fourier coefficients perform the FFT-second layer processing operation on the processing result 1, so that the processing result 2 can be obtained.
  • the processing result 2 can be stored in In the storage unit 2, the processing result 2 is used to update the to-be-processed time domain data stored in the storage unit 2.
  • processing result 1 is as shown in Table b above, because it is based on the Fourier coefficients and the fast Fourier transform algorithm after the FFT processing of the time-domain data to be processed .
  • the obtained processing result 2 is processed out of order, so that the identification sequence corresponding to the processing result 2 is the same as the above table b.
  • Step 6 Perform FFT processing on processing result 2 based on Fourier coefficients and fast Fourier transform algorithm to obtain processing result 3.
  • the Fourier coefficients corresponding to multiple time-domain input data are obtained from the storage unit 1, and the processing result 2 is obtained from the storage unit 2, and then the fast Fourier transform can be used.
  • the algorithm and Fourier coefficients perform the FFT-layer 3 processing operation on the processing result 2 so that the processing result 3 can be obtained.
  • the processing result 3 can be stored in the storage unit. 0, that is, use the processing result 3 to update the to-be-processed time-domain data stored in the storage unit 0.
  • the fast Fourier transform algorithm can include n-layer FFT calculations.
  • n can be arbitrarily configured according to different application scenarios and application requirements, for example: n is equal to 3, 4, 5, or 6, etc. Repeat it again.
  • Step 7 Obtain processing result 3, perform data post-processing operations on processing result 3, and obtain target frequency domain data corresponding to the original data.
  • the processing result 3 is obtained through the storage unit 0, because the processing result 3 (the processing result corresponding to the last layer of FFT calculation processing) is also in the order of (0, 2, 1, 3) Store it. Therefore, in order to facilitate the retrieval and reading of the processing result 3, the processing result 3 can be subjected to code bit inversion processing and data arrangement processing, so that the target frequency domain data corresponding to the original data can be obtained.
  • the processing result 2 in unit 2 has changed during the Fourier transform process. Therefore, the target frequency domain data can be stored in the storage unit 2, that is, the target frequency domain data can be used to analyze the processing result stored in the storage unit 2. 2 Perform an update operation so that the user can recall and view the target frequency domain data.
  • digrev(A) is the result of the code bit reversal read processing for the processing result 3
  • A is the processing result 3
  • bitrev is the function used to implement the bit reversal operation.
  • the to-be-processed time-domain data corresponding to the same data set is stored in different sub-storage units in the first storage unit, when acquiring the to-be-processed time-domain data, it is effective To avoid data reading conflicts, after obtaining the time-domain data to be processed, multiple time-domain input data corresponding to the fast Fourier transform algorithm can be determined in the time-domain data to be processed, so as to achieve rapid utilization
  • the Fourier transform algorithm converts multiple time domain input data to obtain frequency domain data corresponding to multiple time domain input data, which not only solves the conflict of data reading in the Fourier transform process It also improves the efficiency of data processing and further improves the practicability of the method, which is conducive to market promotion and application.
  • FIG. 21 is a schematic structural diagram of a data processing device provided by an embodiment of the present invention. As shown in FIG. 21, this embodiment provides a data processing device that can perform the data processing corresponding to FIG. 1 above Method, the data processing device may include:
  • the memory 12 is used to store computer programs
  • the processor 11 is configured to run a computer program stored in the memory 12 to realize:
  • the to-be-processed time-domain data corresponding to the same data set is read from the multiple different sub-storage units as a fast Fourier transform in the fast Fourier transform algorithm.
  • the fast Fourier transform algorithm is used to perform conversion processing on a plurality of time domain input data used for fast Fourier transform to obtain frequency domain data corresponding to the plurality of time domain input data.
  • the structure of the data processing apparatus may also include a communication interface 13 for communication between the electronic device and other devices or a communication network.
  • the processor 11 when the processor 11 obtains the time-domain data to be processed, the processor 11 is also used to: obtain the original time-domain data; store the original time-domain data in the first storage unit in a preset order; The domain data is subjected to data arrangement processing to obtain the to-be-processed time-domain data, where the to-be-processed time-domain data corresponding to the same data set is stored in a plurality of different sub-storage units in the first storage unit.
  • the preset order is related to the data identification of the original time domain data.
  • the processor 11 when the processor 11 performs data arrangement processing on the original time-domain data to obtain the time-domain data to be processed, the processor 11 is also used to: obtain original address information corresponding to the original time-domain data; The information is updated to obtain updated address information corresponding to the original time domain data; the original time domain data is stored based on the updated address information to obtain the to-be-processed time domain data.
  • the processor 11 when the processor 11 updates the original address information to obtain updated address information corresponding to the original time domain data, the processor 11 is also used to: determine that the data processing corresponding to the original time domain data is parallel Degree; the original address information is updated based on the parallel degree of data processing, and the updated address information corresponding to the original time domain data is obtained.
  • the processor 11 determines multiple time-domain input data corresponding to the fast Fourier transform algorithm in the time-domain data to be processed, the processor 11 is also used to: Data address information of multiple time-domain input data corresponding to the algorithm; among the time-domain data to be processed, multiple time-domain input data corresponding to the fast Fourier transform algorithm are determined based on the data address information.
  • the processor 11 when the processor 11 obtains the data address information of multiple time domain input data corresponding to the fast Fourier transform algorithm, the processor 11 is also used to: obtain the original address information of the time domain data to be processed; Determine the target data set corresponding to the fast Fourier transform algorithm, the target data set includes multiple to-be-processed time-domain data; update the original address information of the multiple to-be-processed time-domain data included in the target data set, Obtain the data address information of multiple time-domain input data corresponding to the fast Fourier transform algorithm.
  • the processor 11 updates the original address information of the multiple to-be-processed time-domain data included in the target data set to obtain the data addresses of multiple time-domain input data corresponding to the fast Fourier transform algorithm.
  • the processor 11 is also used to: obtain the number of sets of the data set; based on the number of sets, update the original address information of the multiple to-be-processed time-domain data included in the target data set to obtain the same fast Fourier transform algorithm. Corresponding data address information of multiple time domain input data.
  • the processor 11 when the processor 11 uses a fast Fourier transform algorithm to perform conversion processing on multiple time-domain input data to obtain frequency-domain data corresponding to the multiple time-domain input data, the processor 11 is further configured to: Obtaining Fourier coefficients corresponding to the plurality of time domain input data; based on the Fourier coefficients corresponding to the plurality of time domain input data and the fast Fourier transform algorithm Performing fast Fourier transform processing on the time domain input data to obtain a plurality of intermediate frequency domain data corresponding to the plurality of time domain input data; obtaining Fourier coefficients corresponding to the plurality of intermediate frequency domain data; And performing fast Fourier transform conversion processing on the plurality of intermediate frequency domain data based on the Fourier coefficients corresponding to the plurality of intermediate frequency domain data and the fast Fourier transform algorithm, so as to obtain The plurality of frequency domain data corresponding to the plurality of time domain input data; wherein, in different conversion processes, the plurality of intermediate frequency domain data are stored in the first storage unit or the third storage unit .
  • the processor 11 before obtaining the Fourier coefficients corresponding to the multiple time-domain input data, the processor 11 is also used to: obtain the coefficient storage order corresponding to the Fourier coefficient; The leaf coefficient is stored in the second storage unit.
  • the processor 11 when the processor 11 obtains the coefficient storage order corresponding to the Fourier coefficients, the processor 11 is further configured to: determine the data storage order corresponding to multiple time-domain input data; according to the data storage order, Determine the storage order of the coefficients corresponding to the Fourier coefficients.
  • the processor 11 is further configured to: perform code bit reversal processing on the frequency domain data to obtain the target frequency corresponding to the frequency domain data. Domain data.
  • the processor 11 is further configured to: perform data arrangement processing on the target frequency domain data to obtain processed target frequency domain data;
  • the target frequency domain data is stored in the third storage unit.
  • the processor 11 when the processor 11 performs data arrangement processing on the target frequency domain data to obtain the processed target frequency domain data, the processor 11 is also used to: obtain the original data address corresponding to the target frequency domain data; The original data address is updated to obtain the updated data address corresponding to the target frequency domain data; the target frequency domain data is stored based on the updated data address, and the processed target frequency domain data is obtained.
  • the processor 11 when the processor 11 updates the original data address to obtain the update data address corresponding to the target frequency domain data, the processor 11 is also used to: determine the parallel data processing corresponding to the target frequency domain data Degree; the original data address is updated based on the parallel degree of data processing, and the updated data address corresponding to the target frequency domain data is obtained.
  • the time-domain data to be processed includes: image data to be processed.
  • the processor 11 is further configured to: obtain the number of product parameters corresponding to the fast Fourier transform algorithm; and determine the number of multiple sub-storage units in the first storage unit based on the number of product parameters.
  • the processor 11 is further configured to: obtain the number of product parameters corresponding to the fast Fourier transform algorithm; and determine the number of sub-storage units in the second storage unit based on the number of product parameters.
  • FIG. 22 is a schematic structural diagram of a movable platform provided by an embodiment of the present invention. With reference to FIG. 22, this embodiment provides a movable platform.
  • the movable platform may be a handheld phone or a handheld phone. PTZ, drones, unmanned vehicles, unmanned ships, robots or autonomous vehicles, etc.
  • the movable platform may include:
  • the data processing device 22 in the above embodiment in FIG. 21 is set on the body 21 and used to obtain the time-domain data to be processed and convert the time-domain data to be processed into frequency-domain data corresponding to multiple time-domain input data .
  • the storage medium is a computer-readable storage medium.
  • the computer-readable storage medium stores program instructions. Corresponds to the data processing method in the embodiment.
  • the disclosed related remote control device and method can be implemented in other ways.
  • the embodiments of the remote control device described above are only illustrative.
  • the division of the modules or units is only a logical function division, and there may be other divisions in actual implementation, such as multiple units or components. It can be combined or integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, remote control devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of the present invention essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium.
  • the aforementioned storage media include: U disk, mobile hard disk, Read-Only Memory (ROM, Read-Only Memory), Random Access Memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

本申请实施例提供一种数据处理方法、装置、可移动平台及存储介质。方法包括:获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在不同的第一存储单元内,所述数据集合与快速傅里叶变换算法相对应;在所述待处理时域数据中,确定与所述快速傅里叶变换算法相对应的多个时域输入数据;利用所述快速傅里叶变换算法对所述多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。本实施例提供的数据处理方法、装置、可移动平台及存储介质,可以在对时域数据进行傅里叶转换处理的过程,避免出现数据读取冲突的情况,进而保证了对数据进行转换处理的效率。

Description

数据处理方法、装置、可移动平台及存储介质 技术领域
本发明实施例涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、可移动平台及存储介质。
背景技术
在将时域数据转换到频域数据的过程中,需要对时域数据进行快速傅里叶变换(fast Fourier transform,简称FFT)运算,在利用FFT算法对时域数据进行转换时,基于FFT转换公式可知,在获取待转换的时域数据时,需要在同一时刻、通过同一个随机存取存储器(Random Access Memory,简称RAM)中的两个地址来获取待转换的时域数据,此时会出现读取数据冲突,从而降低了数据转换的效率。
发明内容
本发明实施例提供了一种数据处理方法、装置、可移动平台及存储介质。
本发明的第一方面是为了提供了一种数据处理方法,包括:
获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内,其中,所述数据集合基于快速傅里叶变换算法的类型而确定;
在一次数据存取操作中,自所述多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据;
利用所述快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
本发明的第二方面是为了提供一种数据处理装置,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述存储器中存储的计算机程序以实现:
获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内,其中,所述数据集合基于快速傅里叶变换算法的类型而确定;
在一次数据存取操作中,自所述多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据;
利用所述快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
本发明的第三方面是为了提供一种可移动平台,包括:
机身;
上述第二方面所述的数据处理装置,设置于所述机身上,用于获取待处理时域数据,并将所述待处理时域数据转换为与所述多个时域输入数据相对应的频域数据。
本发明的第四方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第一方面所述的数据处理方法。
本发明实施例提供的数据处理方法、装置、可移动平台及存储介质,可以在对时域数据进行傅里叶转换处理的过程,避免出现数据读取冲突的情况,进而保证了对数据进行转换处理的效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为图1中的获取待处理时域数据的流程示意图;
图3为图2中的对所述原始时域数据进行数据排列处理,获得所述待处理时域数据的流程示意图;
图4为图3中的对所述原始地址信息进行更新处理,获得与所述原始时域数据相对应的更新地址信息的流程示意图;
图5为图1中的在所述待处理时域数据中,确定与所述快速傅里叶变换算法相对应的多个时域输入数据的流程示意图;
图6为图5中的获取与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息的流程示意图;
图7为图6中的对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息的流程示意图;
图8为图1中的利用所述快速傅里叶变换算法对所述多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据的流程示意图;
图9为本发明实施例提供的另一种数据处理方法的流程示意图;
图10为图9中的获取与所述傅里叶系数相对应的系数存储顺序的流程示意图;
图11为本发明实施例提供的又一种数据处理方法的流程示意图;
图12为图11中的对所述目标频域数据进行数据排列处理,获得处理后的目标频域数据的流程示意图;
图13为图12中的对所述原始数据地址进行更新处理,获得与所述目标频域数据相对应的更新数据地址的流程示意图;
图14为本发明实施例提供的再一种数据处理方法的流程示意图;
图15为本发明实施例提供的又一种数据处理方法的流程示意图;
图16为本发明应用实施例提供的对数据进行数据预处理操作的示意图;
图17为本发明应用实施例提供的对数据进行FFT中第一层处理的示意图;
图18为本发明应用实施例提供的对数据进行FFT中第二层处理的示意图;
图19为本发明应用实施例提供的对数据进行FFT中第三层处理的示意图;
图20为本发明应用实施例提供的对数据进行数据后处理操作的示意图;
图21为本发明实施例提供的一种数据处理装置的结构示意图;
图22为本发明实施例提供的一种可移动平台的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实 施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
为了便于理解本申请的技术方案,下面对相关技术进行简要说明:
在数据处理的技术领域,时域数据中的卷积就等价于频域数据的相乘,即时域数据可以转换为频域数据,具体的,可以将时域中的数据进行快速傅里叶变换(Fast Fourier Transform,简称FFT)运算,从而可以获得频域数据。在进行FFT运算的过程中,可以通过以下公式来实现:
Figure PCTCN2020092820-appb-000001
其中,X(k)是频域数据,x(n)是时域数据,
Figure PCTCN2020092820-appb-000002
是旋转因子(或称为傅里叶系数),k的范围大于等于0、且小于或等于N-1,n为采样信号样本的序列数,N为采样样本数。
为了提高数据处理的效率,可以令k=4r、k=4r+1、k=4r+2、k=4r+3。此时,在k=4r时,公式表达如下:
Figure PCTCN2020092820-appb-000003
在k=4r+1时,公式表达如下:
Figure PCTCN2020092820-appb-000004
在k=4r+2时,公式表达如下:
Figure PCTCN2020092820-appb-000005
在k=4r+3时,公式表达如下:
Figure PCTCN2020092820-appb-000006
从FFT公式(1)变换到基-4FFT公式(2)-(4)的物理含义是,将关于多个采样信号的长序列的DFT计算,分割为该多个采样信号的多个较短序列的DFT计算。例如,分割为4个较短序列的DFT计算。在一个实施方式中,将待处理的时域数据分为a个组,每一组包括N/a个数。然后,从a个组的每一个组中分别取一个数组 成一个数据集合,并将所述数据集合中的数存储于存储单元的不同的子存储单元内。当进行一次快速傅里叶变换(例如,蝶形运算)时,在同一时刻将所述数据集合中的所有的数据从所述不同的子存储单元内读出,并将所述数据集合中的所有的数据作为一次快速傅里叶变换的时域输入数据,以进行快速傅里叶变换。在一个实施方式中,待处理的时域数据为多个采样信号,也称为源数据。
下面,以待处理的时域数据的数量为64(即N=64)、存储单元包括16个子存储单元(例如,16个存储体(存储体bank0-存储体bank15))为例进行说明:在获取到时域数据之后,可以将时域数据按照所获得的顺序存储在存储单元中,具体的,存储单元存储时域数据的情况如下表1所示:
Figure PCTCN2020092820-appb-000007
表1:时域数据按顺序存储在子存储单元
其中,上述表1中的bank用于标识存储体,与bank相对应的“0”至“15”为不同的存储体,x用于标识待处理的时域数据,与x相对应的“0”至“63”为待处理的时域数据(即,x(0)~x(63)),此表格中关于时域数据的每一个格子用于标识一个时域数据在存储体中相对应的位置(例如,对应的地址信息)。在此实施方式中,每一个存储体包括多个存储位置,用于存储时域数据。例如,存储体bank(0)包括4个存储位置,分别存储时域数据“x(0)”,“x(16)”,“x(32)”和“x(48)”。存储体bank(1)包括4个存储位置,分别存储时域数据“x(1)”,“x(17)”,“x(33)”和“x(49)”。以此类推。
当需要对上述的时域数据进行转换处理时,需要分别读取k=4r、k=4r+1、k=4r+2、k=4r+3所对应的输入数据。
例如:在n=0时,上述基-4FFT公式(2)-(4)所对应的输入数据为x(0)、x(16)、x(32)、x(48);在n=1时,上述基-4FFT公式(2)-(4)所对应的输入数据为x(1)、x(17)、x(33)、x(49);在n=2时,上述基-4FFT公式(2)-(4)所对应的输入数据为x(2)、x(18)、x(34)、x(50);在n=3时,上述基-4FFT公式(2)-(4)所对应的输入数据为x(3)、x(19)、x(35)、x(51)。
通过上述表1可知,上述的输入数据x(0)、x(16)、x(32)、x(48)存储在同一个子存储单元(例如,存储体bank0)中的不同位置。此时,为了能够获取到上述的输入数据,需要访问同一个子存储单元(例如,存储体bank0)的不同位置。然而,在一个访问操作中,只能访问同一个子存储单元(例如,存储体bank0)中的一个位置,并获取所对应的输入数据。也就是说,在一次访问操作中不能访问位于同一子存储单元(例如,存储体bank0)中不同位置,并获取所对应的多个输入数据。此外,在一次访问操作中,可以读取位于不同子存储单元中所存储的多个输入数据。
举例来说:可以基于当前访问获取到存储在存储体bank0中的输入数据x(0)、存储在存储体bank1中的输入数据x(1)、存储在存储体bank2中的输入数据x(2)等等。但是,无法同时获取到存储在同一个存储体bank中不同位置处的数据,例如:无法在一个访问操作获取到存储在存储体bank0中的输入数据x(0)、x(16)、x(32)、x(48)等等。
因此,在对数据进行转换处理的过程中,对于上述FFT公式所对应的多个输入数据(例如:x(0)、x(16)、x(32)、x(48))无法通过同一个访问操作同时读取出来,即出现了一次访问操作(即,一次数据读取操作)的冲突情况。
相类似的,上述的输入数据x(1)、x(17)、x(33)、x(49)存储在同一个存储体bank1中的不同位置,继而,为了能够获取到上述的输入数据,需要访问同一个存储体bank1的不同位置。然而,在一个访问操作中,只能访问存储体bank1中的一个位置。因此,只能读取位于同一个存储体bank1中一个存储位置中的数据(例如,输入数据x(1)),对于上述多个数据而言x(1)、x(17)、x(33)、x(49),无法同时读取出来,即出现了数据读取的冲突情况。此时,为了能够实现数据转换的一次处理操作,可以通过多个访问周期读取出需要进行数据处理的多个输入数据,然而,这样极大地降低了数据处理的效率。
相类似的,上述的输入数据x(2)、x(18)、x(34)、x(50)存储在同一个子存储单元(例如,存储体bank2)中的不同位置,继而,为了能够获取到上述的输入数据,需要访问同一个子存储单元(例如,存储体bank2)的不同位置。然而,在一个访问操作中,只能访问同一个子存储单元(例如,存储体bank1)中的一个位置,即在一个访问操作中,可以读取位于不同存储体bank中所存储的数据,然而,只能读取位于同一个存储体bank中一个存储位置中的数据,对于上述多个数据而 言,无法同时读取出来,即出现了数据读取的冲突情况。此时,为了能够实现数据转换的处理操作,可以通过多个访问周期读取出需要进行数据处理的多个输入数据,然而,这样极大地降低了数据处理的效率。
相类似的,上述的输入数据x(3)、x(19)、x(35)、x(51)存储在同一个存储单元(存储体bank)中的不同位置,继而,为了能够获取到上述的输入数据,需要访问同一个存储体bank的不同位置。然而,在一个访问操作中,只能访问同一个存储体bank中的一个位置,即在一个访问操作中,可以读取位于不同存储体bank中所存储的数据,然而,只能读取位于同一个存储体bank中一个存储位置中的数据,对于上述多个数据而言,无法同时读取出来,即出现了数据读取的冲突情况。此时,为了能够实现数据转换的处理操作,可以通过多个访问周期读取出需要进行数据处理的多个输入数据,然而,这样极大地降低了数据处理的效率。
为了能够保证数据处理的效率,本实施例提供了一种数据处理方法、装置、可移动平台及存储介质。该方法可以获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中的多个不同的子存储单元内。并且,上述的数据集合的数量可以依据与快速傅里叶变换算法的类型而确定;由于待处理时域数据存储在多个不同的子存储单元内,从而避免了数据读取冲突的情况,即可以快速地确定与快速傅里叶变换算法相对应的多个时域输入数据,从而提高了利用快速傅里叶变换算法对多个时域输入数据进行转换处理,获得与多个时域输入数据相对应的频域数据的效率,这样不仅解决了傅里叶转换处理过程中存在的数据读取冲突的问题,并且也提高了数据处理的效率。
下面结合附图,对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
图1为本发明实施例提供的一种数据处理方法的流程示意图;参考附图1所示,本实施例提供了一种数据处理方法,该方法的执行主体可以为数据处理处理装置,可以理解的是,该数据处理装置可以实现为软件、或者软件和硬件的组合。具体的,该数据处理方法可以包括:
步骤S101:获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中的多个不同的子存储单元内。其中,数据集合基于快速傅里叶变换算法的类型而确定。
步骤S102:在一次数据存取操作中,自所述多个不同的子存储单元读取对应 于同一数据集合的待处理时域数据,作为与快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据。
步骤S103:利用快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与多个时域输入数据相对应的频域数据。
下面针对上述各个步骤进行详细阐述:
步骤S101:获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中的多个不同子存储单元内。其中,数据集合基于快速傅里叶变换算法的类型而确定。具体的,数据集合中包括有用于实现一次傅里叶变换运算的输入数据。
其中,待处理时域数据是指需要进行数据转换处理操作的时域数据,可以理解的是,待处理时域数据可以基于不同的应用场景而具有不同的表达形式,例如:在图像处理的应用场景中,待处理时域数据可以包括待处理的图像数据;或者,在数据传输的应用场景中,待处理时域数据可以是指待传输的数据信号等等。在一实施方式中,获取待处理时域数据包括多个采样信号样本。在另一实施方式中,将获取的待处理时域数据为多个,并且将所述待处理时域数据对应于不同的数据集合。
另外,本实施例对于获取待处理时域数据的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,例如:在待处理时域数据是待处理的图像数据时,数据处理装置可以与拍摄装置通信连接,在拍摄装置拍摄获得待处理的图像数据之后,数据处理装置可以通过拍摄装置获得待处理的图像数据,具体的,数据处理装置可以主动获取拍摄装置获得的待处理的图像数据,或者,拍摄装置可以主动将待处理的图像数据发送至图像处理装置,从而使得数据处理装置可以获得待处理的图像数据。再或者,待处理时域数据可以存储在预设区域,数据处理装置可以通过访问预设区域获得待处理时域数据。当然的,本领域技术人员也可以采用其他的方式获取到待处理时域数据,只要能够保证对待处理时域数据进行获取的准确可靠性即可,在此不再赘述。
此外,待处理时域数据的个数可以为一个或多个,在待处理时域数据的个数为多个时,多个待处理时域数据可以构成一数据序列,进一步的,多个待处理时域数据按照数据序列存储在第一存储单元中,以便对待处理时域数据进行读取和处理操作,即数据处理装置可以通过访问第一存储单元获取到待处理时域数据。
需要注意的是,在待处理时域数据的个数为多个时,多个待处理时域数据可以对应多个数据集合,此处的数据集合基于与快速傅里叶变换算法的类型而确定。其中,快速傅里叶变换算法类型可以包括基-2FFT算法、基-4FFT算法、基-6FFT算法、基-8FFT算法等。
以快速傅里叶变换算法为基-4FFT算法、数据处理并行度为16、待处理时域数据包括x0-x63为例进行说明,此时,与快速傅里叶变换算法所对应的数据集合的个数为16个,具体的,数据集合所包括的待处理时域数据具体如下:{x(0)、x(16)、x(32)、x(48)}、{x(1)、x(17)、x(33)、x(49)}、{x(2)、x(18)、x(34)、x(50)}、{x(3)、x(19)、x(35)、x(51)}、{x(4)、x(20)、x(36)、x(52)}、{x(5)、x(21)、x(37)、x(53)}、{x(6)、x(22)、x(38)、x(54)}、{x(7)、x(23)、x(39)、x(55)}、{x(8)、x(24)、x(40)、x(56)}、{x(9)、x(25)、x(41)、x(57)}、{x(10)、x(26)、x(42)、x(58)}、{x(11)、x(27)、x(43)、x(59)}、{x(12)、x(28)、x(44)、x(60)}、{x(13)、x(29)、x(45)、x(61)}、{x(14)、x(29)、x(46)、x(62)}、{x(15)、x(30)、x(47)、x(63)}。
此时,待处理时域数据对应于16个数据集合,即可以通过基-4FFT算法对待处理时域数据进行转换处理。
可以理解的是,数据集合的个数并不限于上述所举例的个数信息,本领域技术人员可以根据具体的应用需求、设计需求以及快速傅里叶变换算法的具体类型进行任意设置,只要能够保证数据集合与快速傅里叶变换算法相对应即可,在此不再赘述。
步骤S102:在一次数据存取操作中,自多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据。需要说明的是,一次快速傅里叶变换对应于将一个采样序列中的采样信号样本。
在获取到待处理时域数据之后,可以在待处理时域数据中确定与一次快速傅里叶变换相对应的多个时域输入数据。具体的,快速傅里叶变换算法可以通过多个FFT公式来表达,此时,一个FFT公式的多个待处理时域数据可以对应于一个数据集合。此外,当公式(2)~(5)中的n取不同值时,上述多个不同的FFT公式各自的多个待处理时域数据可以对应于不同的数据集合。此时,为了能够实现数据转换处理,可以在待处理时域数据中,确定与快速傅里叶变换算法相对应的多个时域输入数据。
以基-4FFT算法作为快速傅里叶变换算法、待处理时域数据包括存储在16ram(存储体bank0-存储体bank15)中的x(0)~x(63)为例进行说明,此时的待处理时域数据对应有16个数据集合,而每个数据集合可以对应于一个FFT公式算法。在获取到存储在第一存储单元(例如,16ram)中的待处理时域数据时,可以获取与基-4FFT算法相对应的多个时域输入数据,例如,在k=4r时,可以在待处理时域数据中,获取与FFT算法相对应的多个时域输入数据,上述的多个时域输入数据可以包括:x(n)、
Figure PCTCN2020092820-appb-000008
Figure PCTCN2020092820-appb-000009
其中,n为大于或等于0、且小于或等于
Figure PCTCN2020092820-appb-000010
的值,从而有效地实现了可以在一次数据存取操作中,自所述多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据。
步骤S103:利用快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
在获取到多个时域输入数据之后,可以利用快速傅里叶变换算法对多个时域输入数据进行快速傅里叶转换处理,可以理解的是,快速傅里叶变换处理操作的次数可以为一次或多次,从而可以获得与多个时域输入数据相对应的频域数据,所获得的频域数据的个数可以与多个时域输入数据相对应。
在一个实施方式中,以快速傅里叶变换算法为基-4FFT算法、数据处理并行度为16、待处理时域数据包括x0-x63为例进行说明,此时,为了能够实现对上述待处理时域数据进行快速准确地处理,可以将上述的待处理时域数据分为四个序列,即:每一个序列中包含16个数据,64个点需要分为4次处理,第一次读取[x(0),x(16),x(32),x(48)],[x(1),x(17),x(33),x(49)],[x(2),x(18),x(34),x(50)],[x(3),x(19),x(35),x(51)],对数据的处理如下(基于公式(2),(3),(4),(5),其中,n=0~3):
Figure PCTCN2020092820-appb-000011
Figure PCTCN2020092820-appb-000012
直接读取放在ram中的原始数据会出现冲突,所以需要将原始数据经过重新排列,如表3,排列好的数据按照步骤S402进行读取数据,按照步骤S804提前存储好系数,进行fft操作后,为了使下一层fft操作数据不冲突,需要将输出数据表3进行排列。
第二次读取[x(4),x(20),x(36),x(52)],[x(5),x(21),x(37),x(53)],[x(6),x(22),x(38),x(54)],[x(7),x(23),x(39),x(55)],对数据的处理如下(基于公式(2),(3),(4),(5),其中,n=4~7):
Figure PCTCN2020092820-appb-000013
Figure PCTCN2020092820-appb-000014
第三次读取[x(8),x(24),x(40),x(56)],[x(9),x(25),x(41),x(57)],[x(10),x(26),x(42),x(58)],[x(11),x(27),x(43),x(59)],对数据的处理如下(基于公式(2),(3),(4),(5),其中,n=8-11):
Figure PCTCN2020092820-appb-000015
Figure PCTCN2020092820-appb-000016
第四次读取[x(12),x(28),x(44),x(60)],[x(13),x(29),x(45),x(61)],[x(14),x(30),x(46),x(62)],[x(15),x(31),x(47),x(63)],对数据的处理如下(基于公式(2),(3),(4),(5),其中,n=12~15):
Figure PCTCN2020092820-appb-000017
Figure PCTCN2020092820-appb-000018
需要说明的是,上述公式(6),(8),(10),(12)为矩阵相乘,上述公式(7),(9),(11),(13)为点乘。在一实施方式中,上述每一次读取的数据可以是在4个时钟周期中完成的。其中,上述每一次读取的数据对应于4个不同的数据集合。该4个不同的数据集合中的每一个数据集合中的待处理时域数据存储在存储单元的不同的子存储单元中。在一实施方式中,上述每一个读取的数据可以是在一次时间周期中完成的,上述每一次读取的数据对应于一个数据集合。该数据集合中的待处理时域数据存储在存储单元的不同的子存储单元中。也就是说,一次快速傅里叶变换对应的集合的数量和一次读取数据的操作对应的时钟周期的周期数量相等。在另一实施方式中,将公式(7)、(9)、(11)、(13)中的傅里叶系数存储于多个存储子单元(例如,存储体)中。
本实施例提供的数据处理方法,由于一次快速傅里叶变换所对应的多个时域输入数据(即,位于同一数据集合中的数据)被分别存储于第一存储单元中的多个不同的子存储单元内,因此,在获取一次快速傅里叶变换相对应的多个时域输入数据时,有效地避免了数据读取冲突的情况。例如,获取与FFT算法相对应的多个时域输入数据,上述的多个时域输入数据可以包括:x(n)、
Figure PCTCN2020092820-appb-000019
Figure PCTCN2020092820-appb-000020
Figure PCTCN2020092820-appb-000021
其中,n为大于或等于0、且小于或等于
Figure PCTCN2020092820-appb-000022
的值。当n=0时,x(0),x(16),x(32),x(48)被分别存储于第一存储单元的多个不同的子存储单元内,即,多个时域输入数据存储在不同的存储体内,即可以在一次存取操作中存取对应于一次快速傅里叶变换相对应的多个时域输入数据,从而解决了傅里叶转换处理过程中所存在的数据读取冲突的问题,并且也提高了数据处理的效率,进一步提高了该方法的实用性,有利于市场的推广与应用。
图2为图1中的获取待处理时域数据的流程示意图;在上述实施例的基础上,继续参考附图2所示,本实施例对于获取待处理时域数据的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,较为优选的, 本实施例中的获取待处理时域数据可以包括:
步骤S201:获取原始时域数据。
步骤S202:将原始时域数据按照预设顺序存储在第一存储单元内。
步骤S203:对原始时域数据进行数据排列处理,获得待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中的多个不同子存储单元内。
其中,本实施例中获取原始时域数据的具体实现方式与上述获取待处理时域数据的具体实现方式相类似,具体可参考上述陈述内容,在此不再赘述。
在获取到原始时域数据之后,可以将原始时域数据按照预设顺序存储在第一存储单元内,其中,预设顺序可以用于标识原始时域数据的存储顺序,具体的,上述的预设顺序可以与原始时域数据的数据标识相关,可以理解的是,上述的数据标识可以包括以下任意之一:时间标识、预设顺序标识。在一实施方式中,上述的数据标识为x(n)中的变量n。在将原始时域数据按照预设顺序存储在第一存储单元内之后,为了能够使得与同一数据集合相对应的待处理时域数据存储在第一存储单元中的多个不同的子存储单元内,可以对原始时域数据进行数据排列处理,以获得待处理时域数据。其中,由于与一次快速傅里叶变换相对应的多个时域输入数据包括于所待处理时域数据中,因此,在原始时域数据进行数据排列处理时,使得与一次快速傅里叶变换相对应的多个时域输入数据被存储于多个不同的子存储单元中。具体的,参考附图3所示,本实施例中的对原始时域数据进行数据排列处理,获得待处理时域数据可以包括:
步骤S301:获取与原始时域数据相对应的原始地址信息。
步骤S302:对原始地址信息进行更新处理,获得与原始时域数据相对应的更新地址信息。
步骤S303:基于更新地址信息对原始时域数据进行存储,获得待处理时域数据。
在获取到原始时域数据之后,可以将原始时域数据存储于存储单元中,并获取与原始时域数据相对应的原始地址信息,其中,本实施例对于获取与原始时域数据相对应的原始地址信息的具体实现方式不做限定,本领域技术人员可以根据具体的应用场景和应用需求进行设置,例如:预先配置有原始时域数据与原始地址信息之间的映射关系,通过映射关系和原始时域数据即可确定与原始时域数据 相对应的原始地址信息。
当然的,本领域技术人员也可以通过其他的方式来获取与原始时域数据相对应的原始地址信息,只要能够保证对与原始时域数据相对应的原始地址信息进行获取的准确可靠性即可,在此不再赘述。
在获取到原始地址信息之后,可以对原始地址信息进行更新处理,以获得与原始时域数据相对应的更新地址信息。具体的,参考附图4所示,本实施例中的对原始地址信息进行更新处理,获得与原始时域数据相对应的更新地址信息可以包括:
步骤S401:确定与原始时域数据相对应的数据处理并行度。
步骤S402:基于数据处理并行度对原始地址信息进行更新,获得与原始时域数据相对应的更新地址信息。
其中,数据处理并行度用于标识在同一次快速傅里叶变换相关的数据处理操作过程中,能够实现进行数据处理操作的最大数据数量。对于能够实现该数据处理方法的数据处理装置而言,在确定同一次快速傅里叶变换相关的数据处理操作对应的最大数据数量之后,可根据该最大数据确定在数据处理装置中所包括的第一存储单元的数目确定。即可根据与原始时域数据相对应的数据处理并行度来确定第一存储单元的数目。一般情况下,原始时域数据相对应的数据处理并行度与第一存储单元的数目相同,或者,原始时域数据相对应的数据处理并行度小于第一存储单元的数目。例如:确定与原始时域数据相对应的数据处理并行度是16之后,在数据处理装置中设置至少包括16个关于随机存取存储器(Random Access Memory,缩写ram)的存储体,以用于基于对应的快速傅里叶变换算法进行数据转换处理。或者,确定与原始时域数据相对应的数据处理并行度是32之后,在数据处理装置中设置包括至少32个关于ram的存储体,以用于基于对应的快速傅里叶变换算法进行数据转换处理。或者,确定与原始时域数据相对应的数据处理并行度是64之后,在数据处理装置中包括至少64个关于ram的存储体,以用于基于对应的快速傅里叶变换算法进行数据转换处理。
在确定与原始时域数据相对应的数据处理并行度之后,可以基于数据处理并行度对原始地址信息进行更新处理,具体的,可以利用以下公式来实现更新处理操作,从而可以获得与原始时域数据相对应的更新地址信息:
Figure PCTCN2020092820-appb-000023
其中,P N(A)是与原始时域数据相对应的更新地址信息,A是与原始时域数据相对应的原始地址信息,具体的,A为0,1,2,3,4,…,N-1,N为预设参数变量;B是与原始时域数据相对应的数据处理并行度,“[]”为取整函数,“%”为取余函数。在一个实施方式中,B为4或者16。需要说明的是,可以通过上述类似的方法得到B取不同值时的更新处理操作。
在获取到更新地址信息之后,则可以基于更新地址信息对原始时域数据进行存储,以获得待处理时域数据。举例来说,以待处理的原始时域数据包括x0-x63(即N=64)、存储单元包括16ram(存储体bank0-存储体bank15)为例进行说明,在获取到原始时域数据之后,可以将原始时域数据按照预设顺序存储在子存储单元(例如,存储体)内,具体的,如下表2所示:
Figure PCTCN2020092820-appb-000024
表2:将原始时域数据存储在子存储单元内
其中,上述表1中的bank用于标识存储体,与bank相对应的“0”至“15”为不同的存储体,x用于标识待处理的时域数据,与x相对应的“0”至“63”为待处理的时域数据(即,x(0)~x(63)),此表格中关于时域数据的每一个格子用于标识一个时域数据在存储体中相对应的位置(例如,对应的地址信息)。在此实施方式中,每一个存储体包括多个存储位置,用于存储原始时域数据。例如,存储体bank(0)包括4个存储位置,分别存储原始时域数据“x(0)”,“x(16)”,“x(32)”和“x(48)”。存储体bank(1)包括4个存储位置,分别存储原始时域数据“x(1)”,“x(17)”,“x(33)”和“x(49)”。以此类推。
为了能够避免数据读取冲突,可以获取与原始时域数据相对应的原始地址信息,而后对原始地址信息进行更新处理,获得与原始时域数据相对应的更新地址信息,并基于更新地址信息对原始时域数据进行存储,从而可以获得待处理时域 数据,其中,与同一数据集合相对应的待处理时域数据存储在不同的子存储单元内,具体的,如下表3所示:
Figure PCTCN2020092820-appb-000025
表3:将待处理时域数据存储在子存储单元
通过比较表2和表3可知,通过对原始时域数据进行数据排列处理,可以使得与同一数据集合相对应的待处理时域数据存储在不同的子存储单元内。如表3所示,每一个存储体包括多个存储位置,用于存储待处理的时域数据。例如,存储体bank(0)包括4个存储位置,分别存储待处理的时域数据“x(0)”,“x(21)”,“x(42)”和“x(63)”。存储体bank(1)包括4个存储位置,分别存储待处理的时域数据“x(1)”,“x(20)”,“x(43)”和“x(62)”。以此类推。
举例来说,在对待处理时域数据进行转换处理时,需要分别读取k=4r、k=4r+1、k=4r+2、k=4r+3所对应的输入数据。例如:在n=0时,FFT公式所对应的输入数据为x(0)、x(16)、x(32)、x(48),此时,x(0)存储在存储体bank(0)中的第一区域内,x(16)存储在存储体bank(4)中的第二区域内、x(32)存储在存储体bank(8)中的第三区域内、x(48)存储在存储体bank(12)中的第四区域内。此时,在进行数据读取操作时,即可以通过一次访问操作获取到位于不同存储体bank中的输入数据,进而解决了读取数据时出现的冲突情况,进一步保证了对待处理时域数据进行分析处理的效率。
图5为图1中的在待处理时域数据中,确定与快速傅里叶变换算法相对应的多个时域输入数据的流程示意图;在上述实施例的基础上,继续参考附图5所示,本实施例对于在待处理时域数据中,确定与快速傅里叶变换算法相对应的多个时域输入数据的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,较为优选的,本实施例中的在待处理时域数据中,确定与快速傅里叶变换算法相对应的多个时域输入数据可以包括:
步骤S501:获取与快速傅里叶变换算法相对应的多个时域输入数据的数据地 址信息。
步骤S502:在待处理时域数据中,基于数据地址信息确定与快速傅里叶变换算法相对应的多个时域输入数据。
其中,为了能够确定与快速傅里叶变换算法相对应的多个时域输入数据,可以先获取与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,以便可以基于数据地址信息确定与快速傅里叶变换算法相对应的多个时域输入数据。具体的,参考附图6所示,本实施例中的获取与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息可以包括:
步骤S601:获取待处理时域数据的原始地址信息。
步骤S602:确定与快速傅里叶变换算法相对应的目标数据集合,目标数据集合中包括有多个待处理时域数据。
步骤S603:对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
其中,由于待处理时域数据可以包括与多个数据集合所对应的时域数据,此时,为了能够准确地获取到与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,可以在获取到待处理时域数据之后,基于待处理时域数据和原始地址信息之间的映射关系来获取待处理时域数据的原始地址信息。
并且,在快速傅里叶变换算法确定之后,可以确定与快速傅里叶变换算法相对应的目标数据集合,可以理解的是,目标数据集合可以包括多个待处理时域数据,而后可以对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,从而可以获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
举例来说,以基-4FFT作为快速傅里叶算法、待处理时域数据的个数为64为例进行说明,即以k=4r、k=4r+1、k=4r+2、k=4r+3所对应的不同傅里叶变换公式对上述的时域数据进行数据转换处理,其中,上述快速傅里叶变换公式所对应的输入数据x(n)、x(n+16)、x(n+32)和x(n+48)。
在上述的快速傅里叶变换算法确定之后,即可确定与傅里叶转换公式所对应的目标数据集合,例如:当n=0时,上述傅里叶转换公式所对应的目标数据集合包括多个时域输入数据,具体的,多个时域输入数据可以包括以下:x(0)、x(16)、x(32)和x(48);当n=1时,上述傅里叶转换公式所对应的目标数据 集合包括多个时域输入数据,具体的,多个时域输入数据可以包括以下:x(1)、x(17)、x(33)和x(48)。当n=2时,上述傅里叶转换公式所对应的目标数据集合包括多个时域输入数据,具体的,多个时域输入数据可以包括以下:x(2)、x(18)、x(34)和x(49)等等。
需要注意的是,上述的步骤S601与步骤S602之间的执行顺序并不限于上述实施例所限定的顺序,例如:步骤S601可以在步骤S602之后执行,或者,步骤S601可以与步骤S602同时执行,本领域技术人员可以根据具体的应用需求和设计需求进行任意设置,在此不再赘述。
在一些实例中,参考附图7所示,本实施例中的对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息可以包括:
步骤S701:获取数据集合的集合数量。
步骤S702:基于集合数量对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
为了能够准确地获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,可以先获取数据集合的集合数量,可以理解的是,该数据集合的集合数量与快速傅里叶变换算法相关,即在快速傅里叶变换算法确定之后,即可基于快速傅里叶变换算法来确定数据集合的集合数量,例如:在快速傅里叶变换算法为基-4FFT算法时,数据集合的集合数量可以为16(即64/4);或者,在快速傅里叶变换算法为基-16FFT算法时,数据集合的集合数量可以为4等等。
在获取到数据集合的集合数量之后,可以基于集合数量对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,以获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,具体的,可以基于以下公式来实现基于集合数量对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新操作:
Figure PCTCN2020092820-appb-000026
其中,Aο Nd为与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,A为多个待处理时域数据的原始地址信息,N为预设参数变量,d为数据 集合的集合数量,“[]”为取整函数,“%”为取余函数。
本实施例中,通过获取数据集合的集合数量,而后基于集合数量对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,从而有效地保证了获取与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息的准确可靠性,进一步提高了对数据进行转换处理的效率。
图8为图1中的利用快速傅里叶变换算法对多个时域输入数据进行转换处理,获得与多个时域输入数据相对应的频域数据的流程示意图;在上述实施例的基础上,继续参考附图8所示,本实施例提供了一种获得与多个时域输入数据相对应的频域数据的实现方式,具体的,本实施例中的利用快速傅里叶变换算法对多个时域输入数据进行转换处理,获得与多个时域输入数据相对应的频域数据可以包括:
步骤S801:获取与多个时域输入数据相对应的傅里叶系数。
步骤S802:基于所述多个时域输入数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个时域输入数据进行快速傅里叶变换转换处理,获得与所述多个时域输入数据相对应的多个中间频域数据。
步骤S803:获取与所述多个中间频域数据相对应的傅里叶系数。以及
步骤S804:基于所述多个中间频域数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个中间频域数据进行快速傅里叶变换转换处理,以获得与所述多个时域输入数据相对应的所述多个频域数据。其中,在不同的转换处理过程中,所述多个中间频域数据存储在所述第一存储单元或第三存储单元中。
其中,在获取到多个时域输入数据之后,可以对多个时域输入数据进行分析处理,从而可以获得与多个时域输入数据相对应的傅里叶系数。具体的,预先配置有用于标识多个时域输入数据与傅里叶系数之间对应关系的映射关系/映射表格,而后,可以通过上述的映射关系/映射表格和多个时域输入数据来确定与多个时域输入数据相对应的傅里叶系数。
举例来说,在N=64时,预先配置有用于标识多个时域输入数据与傅里叶系数之间对应关系的映射表格,具体的,映射表格如下:
表4:映射表格
Figure PCTCN2020092820-appb-000027
Figure PCTCN2020092820-appb-000028
在表4中,每一个存储体包括多个存储位置,用于存储傅里叶系数。例如,存储体B0包括4个存储位置,分别存储傅里叶系数“1”,“1”,“1”和“1”。存储体B1包括4个存储位置,分别存储傅里叶系数“1”,
Figure PCTCN2020092820-appb-000029
Figure PCTCN2020092820-appb-000030
以此类推。
需要说明的是,表4中的傅里叶系数和公式(7)、(9)、(11)、(13)中的傅里叶系数是对应的。在一个实施方式中,在一次快速傅里叶变换中自不同的存储子单元(例如,存储体)中读取对应的多个傅里叶系数。其中,这些傅里叶系数与同一数据集合的多个时域输入数据对应。
在一个实施方式中,B0~B15用于标识不同的存储体,即存储体B0~B15。在一些实例中,在傅里叶系数按照上述映射表格进行存储时,为了能够通过上述映射表格获取到傅里叶系数,可以通过以下公式来获取傅里叶系数所对应的存储地址:
Figure PCTCN2020092820-appb-000031
其中,F(A)是与多个时域输入数据相对应的傅里叶系数所对应的地址信息,A为0,1,2,3,4,…,N-1,L用于标识进行快速傅里叶变换处理的层数(例如:在快速傅里叶变换的处理层数为第二层时,L=2),L的取值为1,2,3。
举例来说,在F(A)为B6中的第二个区域所对应的地址信息时,通过上述的F(A)可以获取到傅里叶系数
Figure PCTCN2020092820-appb-000032
相类似的,在F(A)为B8中的第三个区域所对应的地址信息时,通过上述的F(A)可以获取到傅里叶系数“1”;相类似的,在F(A)为B13中的第一个区域所对应的地址信息时,通过上述的F(A)可以获取到傅里叶系数
Figure PCTCN2020092820-appb-000033
在获取到傅里叶系数之后,可以基于多个时域输入数据相对应的傅里叶系数和快速傅里叶变换算法对多个时域输入数据进行快速傅里叶变换处理,获得与所述多个时域输入数据相对应的多个中间频域数据;在获取到中间频域数据之后,即可获取与多个中间频域数据相对应的傅里叶系数,可以理解的是,获取与多个中间频域数据相对应的傅里叶系数的具体实现方式与上述获取与多个时域输入数据相对应的傅里叶系数的具体实现方式相类似,具体可参考上述陈述内容,在此不再赘述。
在获取到与多个中间频域数据相对应的傅里叶系数之后,可以基于所述多个中间频域数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个中间频域数据进行快速傅里叶变换转换处理,以获得与多个中间频域数据相对应的多个频域数据。其中,在不同的转换处理过程中,多个中间频域数据存储在第一存储单元或第三存储单元中。
举例来说,多个时域输入数据包括x(0)、x(16)、x(32)、x(48)时,获取与上述多个时域输入数据相对应的傅里叶系数,而后可以基于上述的傅里叶系数和快速傅里叶变换算法所对应的公式对多个时域输入数据进行转换处理,从而可以获得与x(0)、x(16)、x(32)、x(48)相对应的多个中间频域数据,假设多个中间频域数据包括b(0)、b(16)、b(32)、b(48)。在获取到上述的中间频域数据之后,可以确定与上述多个中间频域数据相对应的傅里叶系数,而后可以基于上述的傅里叶系数和快速傅里叶变换算法所对应的公式对多个时域输入数据进行转换处理,从而可以获得与b(0)、b(16)、b(32)、b(48)相对应的多个频域数据,获得与所述多个中间频域数据相对应的所述多个频域数据,进而有效地实现了通过对多个时域输入数据进行多次快速傅里叶转换处理,获得与所述多个时域输入数据相对应的所述多个频域数据的稳定可靠性,进一步提高了该方法使用的稳定可靠性。
图9为本发明实施例提供的另一种数据处理方法的流程示意图;在上述实施例的基础上,继续参考附图9所示,在获取与多个时域输入数据相对应的傅里叶系数之前,本实施例中的方法还可以包括:
步骤S901:获取与傅里叶系数相对应的系数存储顺序。
步骤S902:基于系数存储顺序将傅里叶系数存储在第二存储单元中。
其中,在获取到傅里叶系数之前,为了能够方便对傅里叶系数进行提取和调用,可以获得与傅里叶系数相对应的系数存储顺序,而后可以基于系数存储顺序将傅里叶系数存储在第二存储单元中。
需要注意的是,该第二存储单元与上述的第一存储单元可以是不同的存储单元,以便可以同时通过第一存储单元获取到待处理时域数据、通过第二存储单元获取到傅里叶系数,以便可以在同一个访问操作周期中实现对待处理时域数据的傅里叶转换操作。
另外,本实施例对于获取与傅里叶系数相对应的系数存储顺序的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,较 为优选的,参考附图10所示,本实施例中的获取与傅里叶系数相对应的系数存储顺序可以包括:
步骤S1001:确定与多个时域输入数据相对应的数据存储顺序。
步骤S1002:根据数据存储顺序,确定与傅里叶系数相对应的系数存储顺序。
其中,由于傅里叶系数用于实现对多个时域输入数据进行分析处理,因此,多个时域输入数据所对应的数据存储顺序可以与傅里叶系数相对应的系数存储顺序相同或者相对应。具体实现时,在获取到多个时域输入数据之后,可以确定与多个时域输入数据相对应的数据存储顺序,具体的,本实施例对于确定与多个时域输入数据相对应的数据存储数据的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,例如:预先配置有与多个时域输入数据相对应的数据存储顺序,该数据存储顺序可以存储在预设区域中,通过访问预设区域可以获取到与多个时域输入数据相对应的数据存储顺序。
在获取到数据存储顺序之后,可以根据数据存储顺序确定为与傅里叶系数相对应的系数存储顺序,具体的,数据存储顺序可以与傅里叶系数相对应的系数存储顺序相同。
例如:在多个时域输入数据的预设顺序依次包括数据d0、数据d1、数据d2和数据d3,而子存储单元包括:单元a0、单元a1、单元a2和单元a3时,若上述多个时域输入数据所对应的数据存储顺序为“0,2,1,3”时,即在将上述多个时域输入数据存储在上述子存储单元时,则可以将数据d0存储在单元a0中,将数据d2存储在单元a1中,将数据d1存储在单元a2中,将数据d3存储在单元a3中。在获取到多个时域输入数据所对应的数据存储顺序之后,即可以基于上述与多个时域输入数据相对应的数据存储顺序,确定与傅里叶系数相对应的系数存储顺序也可以为“0,2,1,3”,从而有效地保证了对与傅里叶系数相对应的系数存储顺序进行获取的准确可靠性。
在获取到系数存储顺序之后,可以基于系数存储顺序将傅里叶系数存储在第二存储单元中,以在对多个时域输入数据进行转换处理时,可以获取到与多个时域输入数据相对应的傅里叶系数,进而保证了对多个时域输入数据进行转换处理的稳定可靠性。
在一些实例中,在获得与多个时域输入数据相对应的频域数据之后,本实施例中的方法还可以包括:
步骤S1100:对频域数据进行码位倒读处理,获得与频域数据相对应的目标频域数据。
其中,在对时域输入数据进行转换处理的过程中,时域输入数据所对应的标识顺序是不断发生变化的。假设:多个时域输入数据所对应的标识顺序为顺序1,在对多个时域输入数据进行转换处理时,为了避免数据读取冲突的情况,需要对多个时域输入数据所对应的标识顺序进行调整,即将顺序1调整为顺序2。而后,通过对多个时域输入数据进行分析处理之后,可以获取到与多个时域输入数据相对应的频域数据,此时,所获得的频域数据所对应的标识顺序为顺序3,可以理解的是,频域数据的标识顺序(顺序3)与多个时域输入数据的标识顺序(顺序2)相对应。
举例来说:时域输入数据按照顺序1依次包括x0、x1、x2和x3,通过对上述多个时域输入数据进行转换处理之后,将时域输入数据的顺序由顺序1调整至顺序2,此时,时域输入数据按照顺序2可以依次为:x0、x2、x1和x3。而后,通过对多个时域输入数据进行分析处理之后,可以获取到与多个时域输入数据相对应的频域数据,此时,所获得的频域数据所对应的标识顺序为顺序3,而频域数据的标识顺序(顺序3)与多个时域输入数据的标识顺序(顺序2)相对应,即频域数据按照顺序3可以依次为:y0、y2、y1和y3。
为了使得用户可以直接、快速地获取到与标识顺序(顺序1)的多个时域输入数据进行转换处理之后的频域数据,在获取到与多个时域输入数据相对应的频域数据之后,可以对频域数据进行码位倒读处理,从而获得与频域数据相对应的目标频域数据,此时,目标频域数据的标识顺序为顺序4,可以理解的是,频域数据的标识顺序(顺序4)与多个时域输入数据的标识顺序(顺序1)相对应,这样有利于用户及时获知到与多个时域数据相对应的数据处理结果,进一步提高了数据处理的实用可靠性。
图11为本发明实施例提供的又一种数据处理方法的流程示意图;在上述实施例的基础上,继续参考附图11所示,在获得与频域数据相对应的目标频域数据之后,本实施例中的方法还可以包括:
步骤S1101:对目标频域数据进行数据排列处理,获得处理后的目标频域数据。
步骤S1102:将处理后的目标频域数据存储在第三存储单元中。
在获取到目标频域数据之后,可以对目标频域数据进行数据排列处理操作,以获得处理后的目标频域数据,而后可以将处理后的目标频域数据存储在第三存储单元中,可以理解的是,上述的第三存储单元可以与第一存储单元为同一存储单元,或者,也可以为不同存储单元,以便通过第三存储单元读取或调用处理后的目标频域数据。
另外,本实施例对于对目标频域数据进行数据排列处理,获得处理后的目标频域数据的具体你实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,较为优选的,参考附图12所示,本实施例中的对目标频域数据进行数据排列处理,获得处理后的目标频域数据可以包括:
步骤S1201:获取与目标频域数据相对应的原始数据地址。
步骤S1202:对原始数据地址进行更新处理,获得与目标频域数据相对应的更新数据地址。
步骤S1203:基于更新数据地址对目标频域数据进行存储,获得处理后的目标频域数据。
在获取到目标频域数据之后,可以获取与目标频域数据相对应的原始数据地址,该原始数据地址可以为进行数据转换操作之后所直接获取到的存储地址信息。而后,可以对原始数据地址进行更新处理,获得与目标频域数据相对应的更新数据地址;具体的,参考附图13所示,本实施例中的对原始数据地址进行更新处理,获得与目标频域数据相对应的更新数据地址可以包括:
步骤S1301:确定与目标频域数据相对应的数据处理并行度。
步骤S1302:基于数据处理并行度对原始数据地址进行更新,获得与目标频域数据相对应的更新数据地址。
其中,在获取到目标频域数据之后,可以确定与目标频域数据相对应的数据处理并行度,具体的,确定与目标频域数据相对应的数据处理并行度的具体实现方式与上述实施例中的确定与原始时域数据相对应的数据处理并行度的具体实现方式相类似,具体可参考上述陈述内容,在此不再赘述。
在获取到数据处理并行度之后,可以基于数据处理并行度对原始数据地址进行更新,从而可以获得与目标频域数据相对应的更新数据地址。具体的,可以通过以下公式实现对原始数据地址的更新操作:
Figure PCTCN2020092820-appb-000034
其中,P N(C)是与目标频域数据相对应的更新数据地址,C是与目标频域数据相对应的原始数据地址,具体的,C为0,1,2,3,4,…,N-1,N为预设参数变量;D是与目标频域数据相对应的数据处理并行度,“[]”为取整函数,“%”为取余函数。在一个实施方式中,B为4或者16。需要说明的是,可以通过上述类似的方法得到B取不同值时的更新处理操作。通过上述公式对原始数据地址进行更新操作,从而有效地保证了对与目标频域数据相对应的更新数据地址进行获取的准确可靠性。
在获取到更新数据地址之后,可以基于更新数据地址对目标频域数据进行存储,从而可以实现基于更新数据地址来获得处理后的目标频域数据,此时,目标频域数据的标识顺序可以满足用户的使用需求和查看需求,从而有利于用户及时、快速地获知到与多个时域数据相对应的目标频域数据,进一步提高了数据处理的实用可靠性。
图14为本发明实施例提供的再一种数据处理方法的流程示意图;在上述任意一个实施例的基础上,继续参考附图14所示,本实施例中的方法还可以包括:
步骤S1401:获取与快速傅里叶变换算法相对应的乘积参数的数量。
步骤S1402:基于乘积参数的数量,确定第一存储单元中的多个子存储单元的数量。
其中,在对原始时域数据进行傅里叶变换处理的过程中,会出现与快速傅里叶变换算法相对应的乘积参数。一般情况下,在确定快速傅里叶变换算法之后,可以获取与快速傅里叶变换算法相对应的乘积参数的数量,而后可以基于乘积参数的数量来确定第一存储单元的数量。基4fft需要16个乘法器,对应于4个点。当乘法的个数为64的话,存储体的个数为16才能够将乘法器全部利用起来。
图15为本发明实施例提供的又一种数据处理方法的流程示意图;在上述任意一个实施例的基础上,继续参考附图15所示,本实施例中的方法还可以包括:
步骤S1501:获取与快速傅里叶变换算法相对应的乘积参数的数量。
步骤S1502:基于乘积参数的数量,确定第二存储单元中的子存储单元的数量。
具体的,在利用快速傅里叶变换算法对数据进行处理的过程中,可以包括多 层的傅里叶转换处理,即数据处理装置中可以包括多个用于实现快速傅里叶变换算法的数据转换单元,多个数据转换单元依次串联,以使得下一级的数据转换单元可以获取到上一级数据转换单元的输出结果,例如:第一层的数据转换单元可以对所获取到的待处理时域数据进行转换处理,获得处理结果1,而后可以将处理结果1输入至第二层的数据转换单元,在第二层的数据转换单元获取到处理结果1时,可以对处理结果1进行转换处理,从而实现对待处理数据进行多层的傅里叶转换处理。
在上述过程中,为了能够实现对各个中间数据(包括:与快速傅里叶变换算法相对应的乘积参数)进行存储,可以配置预设数量的第二存储单元中的子存储单元,上述第二存储单元中的子存储单元可以用于存储在进行傅里叶转换处理过程中所产生的各种数据,从而提高了对数据进行转换处理的效率。
本实施例中步骤的具体实现过程和实现效果与上述实施例中的步骤S1401-步骤S1402的具体实现过程和实现效果相类似,具体可参考上述陈述内容,在此不再赘述。
具体应用时,本应用实施例提供了一种数据处理方法,该数据处理方法可以将时域数据转换为频域数据;其中,以待处理的时域数据的数量为64、快速傅里叶变换算法为基-4FFT算法为例进行说明,预先配置有存储单元0、存储单元1和存储单元2,其中,上述的存储单元0和存储单元2用于存储待处理的时域数据和对时域数据进行分析处理过程中所出现的过程数据,对时域数据进行转换的最终处理结果(基于时域数据相对应的频域数据)可以存储在存储单元0或者存储单元2中,具体的,最终处理结果的存储位置与基-4FFT算法所包括的数据处理层数有关;而上述的存储单元1用于存储进行傅里叶转换处理的傅里叶系数。此外,上述的存储单元0、存储单元1和存储单元2可以包括多个存储体bank(例如:16个存储体bank),上述的存储单元0和存储单元2可以用于存储在利用快速傅里叶变换算法进行数据处理过程中所出现的数据。
具体的,该数据处理方法可以包括以下步骤:
步骤1:获取待处理的原始数据,将原始数据存储在存储单元0中。
其中,存储单元0是预先配置的用于存储原始数据的存储区间,上述的原始数据是指用于进行傅里叶转换处理所直接获取到的时域数据,通过对时域数据进 行傅里叶转换处理,即可获得与时域数据相对应的频域数据。具体的,在获取到待处理的原始数据之后,可以将原始数据按照预设顺序存储至存储单元0中,即存储单元0中存储有用于进行傅里叶变换操作的原始数据。假设,位于在存储单元0中原始数据的存储信息如下表a所示:
表a
Figure PCTCN2020092820-appb-000035
步骤2:获取位于存储单元0中的原始数据,对原始数据进行数据预处理操作,获得待处理时域数据,并将待处理时域数据存储在存储单元2中。
对于原始数据而言,为了避免发生数据的读取冲突,可以对原始数据进行数据预处理操作,以使得与同一数据集合相对应的待处理时域数据存储在存储单元2中的不同存储体bank内,上述的数据集合与快速傅里叶变换算法相对应。具体的,参考附图16所示,通过存储单元0中获取原始数据,在获取到原始数据之后,可以对原始数据进行数据排列处理,获得待处理时域数据,而后可以将待处理时域数据存储在存储单元2中,此时,与同一数据集合相对应的待处理时域数据存储在存储单元2内的不同存储体bank内。
具体的,在对原始数据进行数据预处理操作(数据旋转处理)时,可以通过以下公式来实现:
Figure PCTCN2020092820-appb-000036
其中,Aο Nd为与快速傅里叶变换算法相对应的待处理时域数据的数据地址信息,A为原始数据的原始地址信息,N为预设参数变量,d为数据集合的集合数量,“[]”为取整函数,“%”为取余函数。
进一步的,在获取到待处理时域数据的数据地址信息之后,可以通过以下公式对待处理时域数据进行分析处理(即数据乱序处理),而后可以将处理后的待处理时域数据存储在存储单元2中:
Figure PCTCN2020092820-appb-000037
其中,P N(A)是与待处理时域数据相对应的更新地址信息,A是与待处理时域数据相对应的数据地址信息,具体的,A为0,1,2,3,4,…,N-1,N为预设参数变量;B是与待处理时域数据相对应的数据处理并行度,“[]”为取整函数,“%”为取余函数。在一个实施方式中,B为4或者16。需要说明的是,可以通过上述类似的方法得到B取不同值时的更新处理操作。
假设,在位于存储单元0中的原始数据如上述表a时,位于存储单元2中的待处理时域数据如下表b所示:
表b
Figure PCTCN2020092820-appb-000038
步骤3:获取与多个时域输入数据相对应的傅里叶系数。
其中,存储单元1中存储有与多个时域输入数据相对应的傅里叶系数,从而可以通过存储单元1中获取到与多个时域输入数据相对应的傅里叶系数,以便基于傅里叶系数对待处理时域数据进行傅里叶转换处理。
具体的,在获取与多个时域输入数据相对应的傅里叶系数,可以将傅里叶系数按照预设顺序存储在存储单元1中,在对傅里叶系数进行存储时,可以通过以下公式进行存储空间的分配和存储操作:
Figure PCTCN2020092820-appb-000039
其中,a为
Figure PCTCN2020092820-appb-000040
b为0,1,2,3,coeff(4a+b)为傅里叶系数所对应的存储地址,
Figure PCTCN2020092820-appb-000041
为与多个时域输入数据相对应的傅里叶系数。
在对傅里叶系数进行存储之后,为了能够准确地获取到与多个时域输入数据相对应的傅里叶系数,实现对多个时域输入数据进行傅里叶转换处理,可以通过以下公式来获取到与多个时域输入数据相对应的傅里叶系数:
Figure PCTCN2020092820-appb-000042
其中,F(A)是与多个时域输入数据相对应的傅里叶系数所对应的地址信息,A为0,1,2,3,4,…,N-1,L用于标识进行快速傅里叶变换处理的层数(例如:在快速傅里叶变换的处理层数为第二层时,L=2),L的取值为1,2,3。
步骤4:基于傅里叶系数和快速傅里叶变换算法对待处理时域数据进行FFT处理,获得处理结果1。
为了便于说明,在对待处理时域数据进行多次FFT处理时,可以以对待处理时域数据进行三次FFT处理为例进行说明,此时,数据处理装置中可以包括三个用于实现快速傅里叶变换算法的数据转换单元,三个数据转换单元依次串联,以使得下一级的数据转换单元可以获取到上一级数据转换单元的输出结果。
具体的,参考附图17所示,通过存储单元1获取到与多个时域输入数据相对应的傅里叶系数,通过存储单元2中获取待处理时域数据,而后可以利用快速傅里叶变换算法和傅里叶系数对待处理时域数据进行FFT-第一层处理操作,从而可以获得处理结果1。此时,由于存储单元0中的原始数据已经在傅里叶变换处理过程中发生了变化,为了方便用户对处理结果1进行调用和查看,进而可以将处理结果1存储在存储单元0中,即利用处理结果1对存储单元0中存储的原始数据进行更新操作。
另外,为了能够稳定地实现基于傅里叶系数和快速傅里叶变换算法对待处理时域数据进行FFT处理,在对待处理时域数据进行分析处理之前,可以通过以下公式对待处理时域数据进行数据乱序处理:
Figure PCTCN2020092820-appb-000043
其中,P N(A)是与待处理时域数据相对应的更新地址信息,A是与待处理时域数据相对应的原始地址信息,具体的,A为0,1,2,3,4,…,N-1,N为预设参数变量;B是与待处理时域数据相对应的数据处理并行度,“[]”为取整函数,“%”为取余函数。
在基于傅里叶系数和快速傅里叶变换算法对待处理时域数据进行FFT处理时,可以通过以下公式来获取处理结果1:
dst[a+0]=(src[a]+src[a+1]+src[a+2]+src[a+3])·coeff[a+0];
dst[a+2]=(src[a]-src[a+1]·i-src[a+2]+src[a+3]·i)·coeff[a+1];
dst[a+1]=(src[a]-src[a+1]+src[a+2]-src[a+3])·coeff[a+2];
dst[a+3]=(src[a]+src[a+1]·i-src[a+2]-src[a+3]·i)·coeff[a+3]。
其中,dst[a+0]、dst[a+2]、dst[a+1]、dst[a+3]分别是与待处理时域数据相对应的处理结果1,src[a]、src[a+1]、src[a+2]、src[a+3]是待处理时域数据,coeff[a+0]是傅里叶系数。
需要注意的是,在获取到处理结果1之后,可以将所获得的处理结果1按照(0,2,1,3)存放,因此,为了保证对处理结果1进行读取的方便程度,可以对处理结果1进行码位倒读处理,以使得处理结果1的标识顺序可以与原始数据的标识顺序相一致。
值得注意的是,在待处理时域数据进行FFT处理之前,待处理时域数据存储情况如上述表b时,由于基于傅里叶系数和快速傅里叶变换算法对待处理时域数据进行FFT处理之后,所获得的处理结果1经过数据乱序处理,从而使得处理结果1所对应的标识顺序与上述表b相同。
步骤5:基于傅里叶系数和快速傅里叶变换算法对处理结果1进行FFT处理,获得处理结果2。
具体的,参考附图18所示,通过存储单元1中获取到与多个时域输入数据相对应的傅里叶系数,通过存储单元0中获取处理结果1,而后可以利用快速傅里叶变换算法和傅里叶系数对处理结果1进行FFT-第二层处理操作,从而可以获得处理结果2。此时,为了方便用户对处理结果2进行调用和查看,由于此时的存储单元2中的待处理时域数据已经在傅里叶变换处理过程中发生了变化,进而可以将处理结果2存储在存储单元2中,即利用处理结果2对存储单元2中存储的待处理时域数据进行更新操作。
需要注意的是,本实施例中基于傅里叶系数和快速傅里叶变换算法对处理结果1进行FFT处理的具体实现过程与上述步骤4中的具体实现方式相类似,具体可参考上述陈述内容,在此不再赘述。
值得注意的是,在待处理时域数据进行FFT处理之前,处理结果1的存储情况如上述表b时,由于基于傅里叶系数和快速傅里叶变换算法对待处理时域数据进行FFT处理之后,所获得的处理结果2经过数据乱序处理,从而使得处理结果2所对应的标识顺序与上述表b相同。
步骤6:基于傅里叶系数和快速傅里叶变换算法对处理结果2进行FFT处理,获得处理结果3。
具体的,参考附图19所示,通过存储单元1中获取到与多个时域输入数据相对应的傅里叶系数,通过存储单元2中获取处理结果2,而后可以利用快速傅里叶变换算法和傅里叶系数对处理结果2进行FFT-第三层处理操作,从而可以获得处理结果3。此时,为了方便用户对处理结果3进行调用和查看,由于此时的存储单元0中的处理结果1已经在傅里叶变换处理过程中发生了变化,进而可以将处理结果3存储在存储单元0中,即利用处理结果3对存储单元0中存储的待处理时域数据进行更新操作。
需要注意的是,快速傅里叶变换算法可以包括n层的FFT计算,n可以根据不同的应用场景和应用需求进行任意配置,例如:n等于3、4、5或者6等等,在此不再赘述。
值得注意的是,在待处理时域数据进行FFT处理之前,处理结果2存储情况如上述表b时,由于基于傅里叶系数和快速傅里叶变换算法对处理结果2进行FFT处理时,所获得的处理结果3经过数据乱序处理,从而使得处理结果3所对应的标识顺序与上述表b相同。
步骤7:获取处理结果3,对处理结果3进行数据后处理操作,获得与原始数据相对应的目标频域数据。
具体的,参考附图20所示,通过存储单元0获取处理结果3,由于处理结果3(最后一层FFT计算处理后所对应的处理结果)也是按照(0,2,1,3)的顺序进行存储。因此,为了方便对处理结果3进行调取和读取,可以对处理结果3进行码位倒读处理和数据排列处理,从而可以获得与原始数据相对应的目标频域数据,由于此时的存储单元2中的处理结果2已经在傅里叶变换处理过程中发生了变化,因此,可以将目标频域数据存储在存储单元2中,即利用目标频域数据对存储单元2中存储的处理结果2进行更新操作,以便用户可以对目标频域数据进行调用和查看。
具体实现时,在对处理结果3进行码位倒读处理之后,可以利用以下公式来实现:
digrev(A)=bitrev(A)
其中,digrev(A)为处理结果3进行码位倒读处理后的结果,A为处理结果3,bitrev为用于实现比特位翻转操作的函数。
假设,在获取位于存储单元0中的处理结果3为上述表b时,对处理结果3进行 数据后处理操作,获得的目标频域数据可以如下表c所示:
表c
Figure PCTCN2020092820-appb-000044
本应用实施例提供的数据处理方法,由于与同一数据集合相对应的待处理时域数据存储在第一存储单元内不同的子存储单元中,因此,在获取待处理时域数据时,有效地避免了数据读取冲突的情况,在获取到待处理时域数据之后,可以在待处理时域数据中确定与快速傅里叶变换算法相对应的多个时域输入数据,从而可以实现利用快速傅里叶变换算法对多个时域输入数据进行转换处理,获得与多个时域输入数据相对应的频域数据,这样不仅解决了傅里叶转换处理过程中所存在的数据读取冲突的问题,并且也提高了数据处理的效率,进一步提高了该方法的实用性,有利于市场的推广与应用。
图21为本发明实施例提供的一种数据处理装置的结构示意图;参考附图21所示,本实施例提供了一种数据处理装置,该数据处理装置可以执行上述图1所对应的数据处理方法,该数据处理装置可以包括:
存储器12,用于存储计算机程序;
处理器11,用于运行存储器12中存储的计算机程序以实现:
获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内,其中,所述数据集合基于快速傅里叶变换算法的类型而确定;
在一次数据存取操作中,自所述多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据;
利用所述快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
其中,数据处理装置的结构中还可以包括通信接口13,用于电子设备与其他 设备或通信网络通信。
在一些实例中,在处理器11获取待处理时域数据时,处理器11还用于:获取原始时域数据;将原始时域数据按照预设顺序存储在第一存储单元内;对原始时域数据进行数据排列处理,获得待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内。
在一些实例中,预设顺序与原始时域数据的数据标识相关。
在一些实例中,在处理器11对原始时域数据进行数据排列处理,获得待处理时域数据时,处理器11还用于:获取与原始时域数据相对应的原始地址信息;对原始地址信息进行更新处理,获得与原始时域数据相对应的更新地址信息;基于更新地址信息对原始时域数据进行存储,获得待处理时域数据。
在一些实例中,在处理器11对原始地址信息进行更新处理,获得与原始时域数据相对应的更新地址信息时,处理器11还用于:确定与原始时域数据相对应的数据处理并行度;基于数据处理并行度对原始地址信息进行更新,获得与原始时域数据相对应的更新地址信息。
在一些实例中,在处理器11在待处理时域数据中,确定与快速傅里叶变换算法相对应的多个时域输入数据时,处理器11还用于:获取与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息;在待处理时域数据中,基于数据地址信息确定与快速傅里叶变换算法相对应的多个时域输入数据。
在一些实例中,在处理器11获取与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息时,处理器11还用于:获取待处理时域数据的原始地址信息;确定与快速傅里叶变换算法相对应的目标数据集合,目标数据集合中包括有多个待处理时域数据;对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
在一些实例中,在处理器11对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息时,处理器11还用于:获取数据集合的集合数量;基于集合数量对目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
在一些实例中,在处理器11利用快速傅里叶变换算法对多个时域输入数据进 行转换处理,获得与多个时域输入数据相对应的频域数据时,处理器11还用于:获取与所述多个时域输入数据相对应的傅里叶系数;基于所述多个时域输入数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个时域输入数据进行快速傅里叶变换处理,获得与所述多个时域输入数据相对应的多个中间频域数据;获取与所述多个中间频域数据相对应的傅里叶系数;以及基于所述多个中间频域数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个中间频域数据进行快速傅里叶变换转换处理,以获得与所述多个时域输入数据相对应的所述多个频域数据;其中,在不同的转换处理过程中,所述多个中间频域数据存储在所述第一存储单元或第三存储单元中。
在一些实例中,在获取与多个时域输入数据相对应的傅里叶系数之前,处理器11还用于:获取与傅里叶系数相对应的系数存储顺序;基于系数存储顺序将傅里叶系数存储在第二存储单元中。
在一些实例中,在处理器11获取与傅里叶系数相对应的系数存储顺序时,处理器11还用于:确定与多个时域输入数据相对应的数据存储顺序;根据数据存储顺序,确定与傅里叶系数相对应的系数存储顺序。
在一些实例中,在获得与多个时域输入数据相对应的频域数据之后,处理器11还用于:对频域数据进行码位倒读处理,获得与频域数据相对应的目标频域数据。
在一些实例中,在获得与频域数据相对应的目标频域数据之后,处理器11还用于:对目标频域数据进行数据排列处理,获得处理后的目标频域数据;将处理后的目标频域数据存储在第三存储单元中。
在一些实例中,在处理器11对目标频域数据进行数据排列处理,获得处理后的目标频域数据时,处理器11还用于:获取与目标频域数据相对应的原始数据地址;对原始数据地址进行更新处理,获得与目标频域数据相对应的更新数据地址;基于更新数据地址对目标频域数据进行存储,获得处理后的目标频域数据。
在一些实例中,在处理器11对原始数据地址进行更新处理,获得与目标频域数据相对应的更新数据地址时,处理器11还用于:确定与目标频域数据相对应的数据处理并行度;基于数据处理并行度对原始数据地址进行更新,获得与目标频域数据相对应的更新数据地址。
在一些实例中,待处理时域数据包括:待处理的图像数据。
在一些实例中,处理器11还用于:获取与快速傅里叶变换算法相对应的乘积参数的数量;基于乘积参数的数量,确定第一存储单元中的多个子存储单元的数量。
在一些实例中,处理器11还用于:获取与快速傅里叶变换算法相对应的乘积参数的数量;基于乘积参数的数量,确定第二存储单元中的子存储单元的数量。
图22为本发明实施例提供的一种可移动平台的结构示意图,参考附图22所示,本实施例提供了一种可移动平台,具体应用时,该可移动平台可以为手持电话、手持云台、无人机、无人车、无人船、机器人或自动驾驶汽车等,具体的,该可移动平台可以包括:
机身21;
上述图21实施例中的数据处理装置22,设置于机身21上,用于获取待处理时域数据,并将待处理时域数据转换为与多个时域输入数据相对应的频域数据。
图22所示可移动平台的具体实现过程和实现原理与上述图21中数据处理装置22的实现过程和实现原理相类似,具体可参见上述图22所示实施例中的描述,在此不再赘述。
本实施例的另一方面提供了一种计算机可读存储介质,存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,程序指令用于实现上述图1-图20所对应实施例中的数据处理方法。
以上各个实施例中的技术方案、技术特征在与本相冲突的情况下均可以单独,或者进行组合,只要未超出本领域技术人员的认知范围,均属于本申请保护范围内的等同实施例。
在本发明所提供的几个实施例中,应该理解到,所揭露的相关遥控装置和方法,可以通过其它的方式实现。例如,以上所描述的遥控装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,遥控装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单 元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得计算机处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (38)

  1. 一种数据处理方法,其特征在于,包括:
    获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内,其中,所述数据集合基于快速傅里叶变换算法的类型而确定;
    在一次数据存取操作中,自所述多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据;
    利用所述快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
  2. 根据权利要求1所述的方法,其特征在于,所述获取待处理时域数据,包括:
    获取原始时域数据;
    将所述原始时域数据按照预设顺序存储在所述第一存储单元内;
    对所述原始时域数据进行数据排列处理,获得所述待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内。
  3. 根据权利要求2所述的方法,其特征在于,所述预设顺序与所述原始时域数据的数据标识相关。
  4. 根据权利要求2所述的方法,其特征在于,所述对所述原始时域数据进行数据排列处理,获得所述待处理时域数据,包括:
    获取与所述原始时域数据相对应的原始地址信息;
    对所述原始地址信息进行更新处理,获得与所述原始时域数据相对应的更新地址信息;
    基于所述更新地址信息对所述原始时域数据进行存储,获得所述待处理时域数据。
  5. 根据权利要求4所述的方法,其特征在于,所述对所述原始地址信息进行更新处理,获得与所述原始时域数据相对应的更新地址信 息,包括:
    确定与所述原始时域数据相对应的数据处理并行度;
    基于所述数据处理并行度对所述原始地址信息进行更新,获得与所述原始时域数据相对应的更新地址信息。
  6. 根据权利要求1所述的方法,其特征在于,所述在所述待处理时域数据中,确定与所述快速傅里叶变换算法相对应的多个时域输入数据,包括:
    获取与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息;
    在所述待处理时域数据中,基于所述数据地址信息确定与所述快速傅里叶变换算法相对应的多个时域输入数据。
  7. 根据权利要求6所述的方法,其特征在于,所述获取与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,包括:
    获取所述待处理时域数据的原始地址信息;
    确定与所述快速傅里叶变换算法相对应的目标数据集合,所述目标数据集合中包括有多个待处理时域数据;
    对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
  8. 根据权利要求7所述的方法,其特征在于,所述对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息,包括:
    获取所述数据集合的集合数量;
    基于所述集合数量对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
  9. 根据权利要求1所述的方法,其特征在于,所述利用所述快速傅里叶变换算法对所述多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的多个频域数据,包括:
    获取与所述多个时域输入数据相对应的傅里叶系数;
    基于所述多个时域输入数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个时域输入数据进行快速傅里叶变换处理,获得与所述多个时域输入数据相对应的多个中间频域数据;
    获取与所述多个中间频域数据相对应的傅里叶系数;以及
    基于所述多个中间频域数据相对应的所述傅里叶系数和所述快速傅里叶变换算法对所述多个中间频域数据进行快速傅里叶变换转换处理,以获得与所述多个时域输入数据相对应的所述多个频域数据;
    其中,在不同的转换处理过程中,所述多个中间频域数据存储在所述第一存储单元或第三存储单元中。
  10. 根据权利要求9所述的方法,其特征在于,在获取与所述多个时域输入数据相对应的傅里叶系数之前,所述方法还包括:
    获取与所述傅里叶系数相对应的系数存储顺序;
    基于所述系数存储顺序将所述傅里叶系数存储在第二存储单元中。
  11. 根据权利要求10所述的方法,其特征在于,所述获取与所述傅里叶系数相对应的系数存储顺序,包括:
    确定与所述多个时域输入数据相对应的数据存储顺序;
    根据所述数据存储顺序,确定与所述傅里叶系数相对应的系数存储顺序。
  12. 根据权利要求1-11中任意一项所述的方法,其特征在于,在获得与所述多个时域输入数据相对应的频域数据之后,所述方法还包括:
    对所述频域数据进行码位倒读处理,获得与所述频域数据相对应的目标频域数据。
  13. 根据权利要求1-11中任意一项所述的方法,其特征在于,在获得与所述频域数据相对应的目标频域数据之后,所述方法还包括:
    对所述目标频域数据进行数据排列处理,获得处理后的目标频域数据;
    将处理后的目标频域数据存储在第三存储单元中。
  14. 根据权利要求13所述的方法,其特征在于,所述对所述目标频域数据进行数据排列处理,获得处理后的目标频域数据,包括:
    获取与所述目标频域数据相对应的原始数据地址;
    对所述原始数据地址进行更新处理,获得与所述目标频域数据相对应的更新数据地址;
    基于所述更新数据地址对所述目标频域数据进行存储,获得所述处理后的目标频域数据。
  15. 根据权利要求14所述的方法,其特征在于,所述对所述原始数据地址进行更新处理,获得与所述目标频域数据相对应的更新数据地址,包括:
    确定与所述目标频域数据相对应的数据处理并行度;
    基于所述数据处理并行度对所述原始数据地址进行更新,获得与所述目标频域数据相对应的更新数据地址。
  16. 根据权利要求1-11中任意一项所述的方法,其特征在于,所述待处理时域数据包括:待处理的图像数据。
  17. 根据权利要求1-11中任意一项所述的方法,其特征在于,所述方法还包括:
    获取与所述快速傅里叶变换算法相对应的乘积参数的数量;
    基于所述乘积参数的数量,确定所述第一存储单元中的多个子存储单元的数量。
  18. 根据权利要求10所述的方法,其特征在于,所述方法还包括:
    获取与所述快速傅里叶变换算法相对应的乘积参数的数量;
    基于所述乘积参数的数量,确定所述第二存储单元中的子存储单元的数量。
  19. 一种数据处理装置,其特征在于,包括:
    存储器,用于存储计算机程序;
    处理器,用于运行所述存储器中存储的计算机程序以实现:
    获取待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在第一存储单元中多个不同的子存储单元内,其中,所述数据集合基于快速傅里叶变换算法的类型而确定;
    在一次数据存取操作中,自所述多个不同的子存储单元读取对应于同一数据集合的待处理时域数据,作为与所述快速傅里叶变换算法中的一次快速傅里叶变换相对应的多个时域输入数据;
    利用所述快速傅里叶变换算法对用于进行快速傅里叶变换的多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
  20. 根据权利要求19所述的装置,其特征在于,在所述处理器获取待处理时域数据时,所述处理器还用于:
    获取原始时域数据;
    将所述原始时域数据按照预设顺序存储在多个所述第一存储单元内;
    对所述原始时域数据进行数据排列处理,获得所述待处理时域数据,其中,与同一数据集合相对应的待处理时域数据存储在不同的第一存储单元内。
  21. 根据权利要求20所述的装置,其特征在于,所述预设顺序与所述原始时域数据的数据标识相关。
  22. 根据权利要求20所述的装置,其特征在于,在所述处理器对所述原始时域数据进行数据排列处理,获得所述待处理时域数据时,所述处理器还用于:
    获取与所述原始时域数据相对应的原始地址信息;
    对所述原始地址信息进行更新处理,获得与所述原始时域数据相对应的更新地址信息;
    基于所述更新地址信息对所述原始时域数据进行存储,获得所述待处理时域数据。
  23. 根据权利要求22所述的装置,其特征在于,在所述处理器对所述原始地址信息进行更新处理,获得与所述原始时域数据相对应的更新地址信息时,所述处理器还用于:
    确定与所述原始时域数据相对应的数据处理并行度;
    基于所述数据处理并行度对所述原始地址信息进行更新,获得与所述原始时域数据相对应的更新地址信息。
  24. 根据权利要求19所述的装置,其特征在于,在所述处理器在所述待处理时域数据中,确定与所述快速傅里叶变换算法相对应的多个时域输入数据时,所述处理器还用于:
    获取与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息;
    在所述待处理时域数据中,基于所述数据地址信息确定与所述快速傅里叶变换算法相对应的多个时域输入数据。
  25. 根据权利要求24所述的装置,其特征在于,在所述处理器获取与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息时,所述处理器还用于:
    获取所述待处理时域数据的原始地址信息;
    确定与所述快速傅里叶变换算法相对应的目标数据集合,所述目标数据集合中包括有多个待处理时域数据;
    对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
  26. 根据权利要求25所述的装置,其特征在于,在所述处理器对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息时,所述处理器还用于:
    获取所述数据集合的集合数量;
    基于所述集合数量对所述目标数据集合中包括的多个待处理时域数据的原始地址信息进行更新,获得与所述快速傅里叶变换算法相对应的多个时域输入数据的数据地址信息。
  27. 根据权利要求19所述的装置,其特征在于,在所述处理器利用所述快速傅里叶变换算法对所述多个时域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据时,所述处理器还用于:
    获取与所述多个时域输入数据相对应的傅里叶系数;
    基于所述傅里叶系数和所述快速傅里叶变换算法对所述多个时 域输入数据进行转换处理,获得与所述多个时域输入数据相对应的频域数据。
  28. 根据权利要求27所述的装置,其特征在于,在获取与所述多个时域输入数据相对应的傅里叶系数之前,所述处理器还用于:
    获取与所述傅里叶系数相对应的系数存储顺序;
    基于所述系数存储顺序将所述傅里叶系数存储在第二存储单元中。
  29. 根据权利要求28所述的装置,其特征在于,在所述处理器获取与所述傅里叶系数相对应的系数存储顺序时,所述处理器还用于:
    确定与所述多个时域输入数据相对应的数据存储顺序;
    根据所述数据存储顺序,确定与所述傅里叶系数相对应的系数存储顺序。
  30. 根据权利要求19-29中任意一项所述的装置,其特征在于,在获得与所述多个时域输入数据相对应的频域数据之后,所述处理器还用于:
    对所述频域数据进行码位倒读处理,获得与所述频域数据相对应的目标频域数据。
  31. 根据权利要求19-29中任意一项所述的装置,其特征在于,在获得与所述频域数据相对应的目标频域数据之后,所述处理器还用于:
    对所述目标频域数据进行数据排列处理,获得处理后的目标频域数据;
    将处理后的目标频域数据存储在第三存储单元中。
  32. 根据权利要求31所述的装置,其特征在于,在所述处理器对所述目标频域数据进行数据排列处理,获得处理后的目标频域数据时,所述处理器还用于:
    获取与所述目标频域数据相对应的原始数据地址;
    对所述原始数据地址进行更新处理,获得与所述目标频域数据相对应的更新数据地址;
    基于所述更新数据地址对所述目标频域数据进行存储,获得所述 处理后的目标频域数据。
  33. 根据权利要求32所述的装置,其特征在于,在所述处理器对所述原始数据地址进行更新处理,获得与所述目标频域数据相对应的更新数据地址时,所述处理器还用于:
    确定与所述目标频域数据相对应的数据处理并行度;
    基于所述数据处理并行度对所述原始数据地址进行更新,获得与所述目标频域数据相对应的更新数据地址。
  34. 根据权利要求19-33中任意一项所述的装置,其特征在于,所述待处理时域数据包括:待处理的图像数据。
  35. 根据权利要求19-33中任意一项所述的装置,其特征在于,所述处理器还用于:
    获取与所述快速傅里叶变换算法相对应的乘积参数的数量;
    基于所述乘积参数的数量,确定第一存储单元中的多个子存储单元的数量。
  36. 根据权利要求28所述的装置,其特征在于,所述处理器还用于:
    获取与所述快速傅里叶变换算法相对应的乘积参数的数量;
    基于所述乘积参数的数量,确定所述第二存储单元中的子存储单元的数量。
  37. 一种可移动平台,其特征在于,包括:
    机身;
    权利要求18-33中任意一项所述的数据处理装置,设置于所述机身上,用于获取待处理时域数据,并将所述待处理时域数据转换为与所述多个时域输入数据相对应的频域数据。
  38. 一种计算机可读存储介质,其特征在于,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于实现权利要求1-18中任意一项所述的数据处理方法。
PCT/CN2020/092820 2020-05-28 2020-05-28 数据处理方法、装置、可移动平台及存储介质 WO2021237554A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202080004991.4A CN112689832A (zh) 2020-05-28 2020-05-28 数据处理方法、装置、可移动平台及存储介质
PCT/CN2020/092820 WO2021237554A1 (zh) 2020-05-28 2020-05-28 数据处理方法、装置、可移动平台及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/092820 WO2021237554A1 (zh) 2020-05-28 2020-05-28 数据处理方法、装置、可移动平台及存储介质

Publications (1)

Publication Number Publication Date
WO2021237554A1 true WO2021237554A1 (zh) 2021-12-02

Family

ID=75457730

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/092820 WO2021237554A1 (zh) 2020-05-28 2020-05-28 数据处理方法、装置、可移动平台及存储介质

Country Status (2)

Country Link
CN (1) CN112689832A (zh)
WO (1) WO2021237554A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070260660A1 (en) * 2006-05-05 2007-11-08 Hitachi, Ltd. Efficient mapping of FFT to a reconfigurable parallel and pipeline data flow machine
CN101082906A (zh) * 2006-05-31 2007-12-05 中国科学院微电子研究所 一种低存储器开销的固定基fft处理器及其方法
CN101339546A (zh) * 2008-08-07 2009-01-07 那微微电子科技(上海)有限公司 地址映射方法和操作数并行的fft处理系统
CN101364215A (zh) * 2008-09-28 2009-02-11 炬力集成电路设计有限公司 一种用于节省存储空间的数据处理装置及方法
CN103218348A (zh) * 2013-03-29 2013-07-24 北京创毅视讯科技有限公司 快速傅里叶变换处理方法和系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102087640B (zh) * 2009-12-08 2013-06-05 中兴通讯股份有限公司 傅里叶变换的实现方法和装置
CN106469134B (zh) * 2016-08-29 2019-02-15 北京理工大学 一种用于fft处理器的数据无冲突存取方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070260660A1 (en) * 2006-05-05 2007-11-08 Hitachi, Ltd. Efficient mapping of FFT to a reconfigurable parallel and pipeline data flow machine
CN101082906A (zh) * 2006-05-31 2007-12-05 中国科学院微电子研究所 一种低存储器开销的固定基fft处理器及其方法
CN101339546A (zh) * 2008-08-07 2009-01-07 那微微电子科技(上海)有限公司 地址映射方法和操作数并行的fft处理系统
CN101364215A (zh) * 2008-09-28 2009-02-11 炬力集成电路设计有限公司 一种用于节省存储空间的数据处理装置及方法
CN103218348A (zh) * 2013-03-29 2013-07-24 北京创毅视讯科技有限公司 快速傅里叶变换处理方法和系统

Also Published As

Publication number Publication date
CN112689832A (zh) 2021-04-20

Similar Documents

Publication Publication Date Title
JP7343568B2 (ja) 機械学習のためのハイパーパラメータの識別および適用
US20200050968A1 (en) Interactive interfaces for machine learning model evaluations
US20180300607A1 (en) Minimizing memory reads and increasing performance by leveraging aligned blob data in a processing unit of a neural network environment
US20150379425A1 (en) Consistent filtering of machine learning data
US20150379427A1 (en) Feature processing tradeoff management
US10838963B2 (en) Optimized access for hierarchical low cardinality value synopsis in analytical databases
CN109521994A (zh) 乘法硬件电路、片上系统及电子设备
CN107329987A (zh) 一种基于mongo数据库的搜索系统
US9594815B2 (en) Local extrema based data sampling system
CN109064434B (zh) 图像增强的方法、装置、存储介质及计算机设备
Gupta et al. Faster as well as early measurements from big data predictive analytics model
US20190370599A1 (en) Bounded Error Matching for Large Scale Numeric Datasets
US11487342B2 (en) Reducing power consumption in a neural network environment using data management
Beckermann et al. Equilibrium problems for vector potentials with semidefinite interaction matrices and constrained masses
CN113468344B (zh) 实体关系抽取方法、装置、电子设备和计算机可读介质
Glau A Feynman–Kac-type formula for Lévy processes with discontinuous killing rates
Dolgopyat et al. A Berry–Esseen theorem and Edgeworth expansions for uniformly elliptic inhomogeneous Markov chains
US20220335270A1 (en) Knowledge graph compression
WO2021237554A1 (zh) 数据处理方法、装置、可移动平台及存储介质
EP3743821A1 (en) Wide key hash table for a graphics processing unit
CN114764615A (zh) 卷积运算的实现方法、数据处理方法及装置
CN105989154B (zh) 相似性度量的方法及设备
US11467973B1 (en) Fine-grained access memory controller
CN108628889B (zh) 基于时间片的数据抽样方法、系统和装置
CN107894942A (zh) 数据表访问量的监控方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20937453

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20937453

Country of ref document: EP

Kind code of ref document: A1