A data storage device and method using FFT reverse storage

By using the bit inverse counting module and the address transformation module in the FFT hardware accelerator, the bit inverse data stream is directly stored in the storage space in sequence, which solves the hardware area increase and pipeline operation delay caused by the whole-sequence module in the prior art, and realizes efficient data storage.

CN119759806APending Publication Date: 2025-04-04HUNAN GREAT LEO MICROELECTRONICS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411927780.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-25
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

When processing bit inverse data streams, existing FFT hardware accelerators need to design additional large-depth whole-sequence modules, resulting in increased hardware area and pipeline operation delays.

Method used

The bit inverse counting module and the address transformation module are used to generate the initial inverse address stream and perform address transformation, and the bit inverse data stream is directly stored in the storage space in sequence to avoid the design of the whole-sequence module.

Benefits of technology

It reduces hardware cost and production difficulty, improves efficiency, avoids additional hardware area increase and pipeline operation delay, and realizes efficient storage of bit inverse data streams.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119759806A_ABST
    Figure CN119759806A_ABST
Patent Text Reader

Abstract

The present invention discloses a data storage device and method for storing data in reverse order of FFT, the device comprising: a bit reverse counting module, which generates an initial reverse address stream according to the input FFT operation point number; the FFT operation point number is the total number of samples of the current bit reverse data stream; an address conversion module, which is used to receive the initial reverse address stream, and further convert the initial address according to user needs to obtain the final data storage address; by generating a data storage address in reverse order, the data is stored in the storage space in the order of the bit reverse data stream. The method is implemented based on the above device. The present invention has the advantages of simple principle, ability to reduce hardware cost and production difficulty, and improved efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention mainly relates to the field of FFT hardware accelerator in digital signal processing technology, and in particular to a data storage device and method using FFT reverse order storage. Background Art

[0002] Fast Fourier transform occupies a core position in digital signal processing, and the hardware acceleration design of FFT is a research hotspot in the field of high-performance accelerators.

[0003] At present, the operation methods of FFT are divided into time selection method and frequency selection method. The difference between these two methods is that one requires the input operation of the data stream in reverse bit order and the output operation of the sequential data stream; the other requires the input operation of the sequential data stream and the output operation of the data stream in reverse bit order. In terms of a complete signal processing algorithm, windowing operation is often required before FFT operation, and windowing needs to be performed in a sequential manner. Therefore, most of the implementations of FFT hardware accelerators use the frequency selection method. However, the data stream in reverse bit order cannot be processed in the next step of signal processing, so behind the FFT hardware accelerator of the frequency selection method, a large-depth reordering module is generally designed to reorder the data stream in reverse bit order into a sequential data stream, and then the data is stored in sequence in the storage space through the data storage module.

[0004] From the perspective of specific applications, the above-mentioned traditional method greatly increases the overall hardware area. At the same time, before the reordering is completed and all outputs are completed, the reordering module cannot receive new bit-reversed data streams, which will seriously affect the operation of the overall pipeline and cause a lot of time delays. It is obvious that the reordering module causes a lot of hardware area consumption and waste of pipeline time. Summary of the invention

[0005] The technical problem to be solved by the present invention is: in view of the technical problems existing in the prior art, the present invention provides a data storage device and method using FFT reverse storage which has a simple principle, can reduce hardware cost and manufacturing difficulty, and improve efficiency.

[0006] In order to solve the above technical problems, the present invention adopts the following technical solutions: A data storage device storing data in reverse order of FFT, comprising: The bit reverse counting module generates an initial reverse address stream according to the input FFT operation point number; the FFT operation point number is the total number of samples of the current bit reverse data stream; The address conversion module is used to receive the initial reverse address stream and further convert the initial address according to user requirements to obtain the final data storage address; By generating a data storage address in bit reverse order, the bit reverse order data stream is sequentially stored in the storage space.

[0007] As a further improvement of the device of the present invention: the bit reverse counting module includes a sequential counter and a reverse counter, the sequential counter performs normal counting according to the input bit reverse data stream, and outputs the bit reverse data stream; the reverse counter reverses the bits of the sequential counter according to the input FFT operation point number, obtains the initial reverse address stream of the bit reverse data stream and outputs it.

[0008] As a further improvement of the device of the present invention: in the address conversion module, the bit reverse data stream and the initial reverse address stream output by the bit reverse counting module are received; the initial reverse address stream is transformed to obtain the final data storage address; and the bit reverse data stream and the corresponding final data storage address are output.

[0009] As a further improvement of the device of the present invention: the number of FFT operation points N input into the bit reverse counting module is calculated according to the formula , obtain the total number of bits M that need bit reversal; reverse the [M-1:0] bits of the normal sequence counter inside the bit reversal counting module one by one to [0:M-1], obtain the reverse count value of the current bit reversal data stream, and output it together as the initial reverse address stream and the bit reversal data stream.

[0010] As a further improvement of the device of the present invention: when performing the transformation in the address transformation module, any one or more of the following forms are included: Multiply by the address spacing unit between samples; Plus the intervals between different data streams; Add the starting address value of the data stream.

[0011] The present invention further provides a storage method based on the above data storage device, the steps of which include: Step S1: outputting the bit reverse data stream after operation and providing the number of operation points of FFT; Step S2: The bit reverse counting module receives the bit reverse data stream and the FFT operation point number data; Step S3: the sequence counter of the bit reverse counting module counts sequentially one by one according to the bit reverse data stream; Step S4: the reverse counter of the bit reverse counting module receives the number of FFT operation points N and the count value output by the sequence counter, and obtains the initial reverse address by conversion; Step S5: the address conversion module receives the bit reverse data stream and the initial reverse address stream, converts the initial reverse address, and obtains the actual data storage address of each sample; Step S6: The data storage module writes the bit-reversed data stream into the external storage space according to the finally generated data storage address.

[0012] As a further improvement of the method of the present invention: in the step S1, the FFT hardware accelerator using the external frequency decimation method outputs the bit reverse data stream after the operation and provides the operation points of the FFT.

[0013] In step S4, the reverse counter of the bit reverse counting module receives the number of FFT operation points N, and according to the formula , the [M-1:0] bits of the sequential counter are reversed one by one to [0:M-1], thereby obtaining the initial reverse address.

[0014] Compared with the prior art, the advantages of the present invention are: 1. The data storage device and method for FFT reverse storage of the present invention have a simple principle, can reduce hardware cost and manufacturing difficulty, and improve efficiency. The present invention directly stores the reverse data stream in reverse address order into the external storage space, thereby avoiding the additional design of a reordering module, designing a deep reordering module, and causing a large increase in hardware area and delay in the overall pipeline operation.

[0015] 2. The data storage device and method for FFT reverse order storage of the present invention generates an actual storage address for each sample in real time, and different groups of reverse order data streams can be continuously input. Because the address generation is in real time, there is no need to wait for all data streams to be sorted and output before inputting new reverse order data streams, as in the design of a reordering module, thereby reducing a lot of time.

[0016] 3. The data storage device and method of the present invention uses FFT reverse order storage to start from the initial storage address of the data stream. Since various subsequent address changes are all multiplication and addition operations performed on the initial storage address in the same manner, there will be no impact on the storage of different samples, and its robustness is very strong.

[0017] 4. The data storage device and method of the present invention using FFT reverse order storage can store the bit reverse order data stream sequentially into the data storage device of the storage space according to the number of FFT operation points. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 It is a schematic diagram of the topological structure principle of the data storage device in a specific embodiment of the present invention.

[0019] Figure 2 It is a flowchart of the data storage method of the present invention in a specific embodiment. DETAILED DESCRIPTION

[0020] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0021] In this application, unless otherwise clearly specified and limited, the terms "assemble", "connect", "connect", "fix" and the like should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0022] like Figure 1 As shown, this embodiment discloses a data storage device storing data in reverse order of FFT, including: The bit reverse counting module generates an initial reverse address stream according to the input FFT operation point number; the FFT operation point number is the total number of samples of the current bit reverse data stream; The address conversion module is used to receive the initial reverse address stream and further convert the initial address according to user requirements to obtain the final data storage address.

[0023] The present invention realizes the function of storing the bit-reversed data stream in sequence into the storage space by generating the data storage address of the bit-reversed order.

[0024] In a specific application example, the bit reverse counting module includes a sequential counter and a reverse counter, wherein the sequential counter performs normal counting according to the input bit reverse data stream and outputs the bit reverse data stream. The reverse counter reverses the bits of the sequential counter according to the input FFT operation points, obtains the initial reverse address stream of the bit reverse data stream and outputs it.

[0025] In a specific application example, in the address transformation module, the bit reverse data stream and the initial reverse address stream output by the bit reverse counting module are received; according to user needs, the initial reverse address stream is further transformed to obtain the final data storage address; and the bit reverse data stream and the corresponding final data storage address are output.

[0026] In a specific application example, the number of FFT operation points N input into the bit reverse counting module is calculated according to the formula , and obtain the total number of bits that need bit reversal M. Reverse the [M-1:0] bits of the normal sequence counter inside the bit reversal counting module one by one to [0:M-1], and obtain the reverse count value of the current bit reversal data stream, which is output together as the initial reverse address stream and the bit reversal data stream.

[0027] In a specific application example, the address conversion module may include the following forms when performing conversion: Multiply by the address spacing unit between samples; Plus the intervals between different data streams; Add the starting address value of the data stream; Furthermore, after the transformation, the final actual data storage address is obtained and written into the storage space together with the bit reverse data stream.

[0028] like Figure 2 As shown, the present invention further provides a storage method based on the above data storage device, the steps of which include: Step S1: The FFT hardware accelerator using the external frequency decimation method outputs the bit reversed data stream after the operation and provides the number of FFT operation points; Step S2: The bit reverse counting module of the data storage device receives the bit reverse data stream and the FFT operation point number data; Step S3: the sequence counter in the bit reverse counting module counts sequentially one by one according to the bit reverse data stream; Step S4: The reverse counter in the bit reverse counting module receives the number of FFT operation points N, and according to the formula , reverse the [M-1:0] bits of the sequential counter one by one to [0:M-1], thereby obtaining the initial reverse address; Step S5: the address conversion module receives the bit reverse data stream and the initial reverse address stream, and further converts the initial reverse address according to different user requirements, and finally obtains the actual data storage address of each sample; Step S6: The data storage module writes the bit-reversed data stream and the corresponding data storage address into the external storage space.

[0029] For example, there is a 4-point FFT operation, and the output data order is A, B, C, D. The final stored serial numbers are 0, 2, 1, 3, that is, in the storage space, they need to be stored in the order of A, C, B, D. The sequential counter will first obtain the count stream of 0, 1, 2, 3, and the reverse counter will obtain the count stream of 0, 2, 1, 3. Due to the transformation of the sample address interval, the starting address, and the data group address interval, each sample is independent. In this way, after the final transformation of the count stream of 0, 2, 1, 3, A, B, C, D can be stored. After completion, the storage space presents the sequential storage of A, C, B, D.

[0030] The above are only preferred embodiments of the present invention, and the protection scope of the present invention is not limited to the above embodiments. All technical solutions under the concept of the present invention belong to the protection scope of the present invention. It should be pointed out that for ordinary technicians in this technical field, some improvements and modifications without departing from the principle of the present invention should be regarded as the protection scope of the present invention.

Claims

1. A data storage device storing data in reverse order of FFT, characterized in that: include: The bit reverse counting module generates an initial reverse address stream according to the input FFT operation point number; the FFT operation point number is the total number of samples of the current bit reverse data stream; The address conversion module is used to receive the initial reverse address stream and further convert the initial address according to user requirements to obtain the final data storage address; By generating a data storage address in bit reverse order, the data is stored in the storage space in a bit reverse order data stream sequence.

2. The data storage device according to claim 1, characterized in that: The bit reverse counting module includes a sequential counter and a reverse counter. The sequential counter performs normal counting according to the input bit reverse data stream and outputs the bit reverse data stream; the reverse counter reverses the bits of the sequential counter according to the input FFT operation points, obtains the initial reverse address stream of the bit reverse data stream and outputs it.

3. The data storage device according to claim 1, characterized in that: In the address conversion module, the bit reverse data stream and the initial reverse address stream output by the bit reverse counting module are received; the initial reverse address stream is transformed to obtain the final data storage address; and the bit reverse data stream and the corresponding final data storage address are output.

4. The data storage device according to claim 1, wherein: The number of FFT operation points N input into the bit reverse counting module is calculated according to the formula , obtain the total number of bits M that need bit reversal; reverse the [M-1:0] bits of the normal sequence counter inside the bit reversal counting module one by one to [0:M-1], obtain the reverse count value of the current bit reversal data stream, and output it together as the initial reverse address stream and the bit reversal data stream.

5. The data storage device according to any one of claims 1 to 4, wherein: When performing the transformation in the address transformation module, any one or more of the following forms are included: Multiply by the address spacing unit between samples; Plus the intervals between different data streams; Add the starting address value of the data stream.

6. A storage method based on the data storage device according to any one of claims 1 to 5, characterized in that the steps include: Step S1: outputting the bit reverse data stream after operation and providing the number of operation points of FFT; Step S2: The bit reverse counting module receives the bit reverse data stream and the FFT operation point number data; Step S3: the sequence counter of the bit reverse counting module counts sequentially one by one according to the bit reverse data stream; Step S4: the reverse counter of the bit reverse counting module receives the number of FFT operation points N and the count value output by the sequence counter, and obtains the initial reverse address by conversion; Step S5: the address conversion module receives the bit reverse data stream and the initial reverse address stream, converts the initial reverse address, and obtains the actual data storage address of each sample; Step S6: The data storage module writes the bit-reversed data stream into the external storage space according to the finally generated data storage address.

7. The storage method according to claim 6, characterized in that: In the step S1, the FFT hardware accelerator using the external frequency decimation method outputs a bit-reversed data stream after operation and provides the number of operation points of the FFT.

8. The storage method according to claim 6, characterized in that: In step S4, the reverse counter of the bit reverse counting module receives the number of FFT operation points N, and according to the formula , the [M-1:0] bits of the sequential counter are reversed one by one to [0:M-1], thereby obtaining the initial reverse address.