CN115544438B - Twiddle factor generation method and device in digital communication system and computer equipment - Google Patents

Twiddle factor generation method and device in digital communication system and computer equipment Download PDF

Info

Publication number
CN115544438B
CN115544438B CN202211496163.4A CN202211496163A CN115544438B CN 115544438 B CN115544438 B CN 115544438B CN 202211496163 A CN202211496163 A CN 202211496163A CN 115544438 B CN115544438 B CN 115544438B
Authority
CN
China
Prior art keywords
twiddle factor
twiddle
memory
reference value
transformation
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202211496163.4A
Other languages
Chinese (zh)
Other versions
CN115544438A (en
Inventor
贾有朋
檀甲甲
倪海峰
丁克忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Chuangxin Huilian Technology Co ltd
Original Assignee
Nanjing Chuangxin Huilian Technology Co ltd
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 Nanjing Chuangxin Huilian Technology Co ltd filed Critical Nanjing Chuangxin Huilian Technology Co ltd
Priority to CN202211496163.4A priority Critical patent/CN115544438B/en
Publication of CN115544438A publication Critical patent/CN115544438A/en
Application granted granted Critical
Publication of CN115544438B publication Critical patent/CN115544438B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • G06F17/141Discrete Fourier transforms
    • 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
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

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

Abstract

The application relates to a twiddle factor generation method, a twiddle factor generation device and computer equipment in a digital communication system. The method is based on a small amount of memory in the memoryIs
Figure 939167DEST_PATH_IMAGE002
The twiddle factor reference values are used for generating twiddle factors used by DFT transformation, IDFT transformation, FFT transformation and IFFT transformation when executing butterfly operation of each stage by utilizing an interpolation algorithm. The data volume of the twiddle factors stored in the memory of the method is less, the twiddle factors do not need to be respectively stored aiming at DFT/IDFT transformation and FFT/IFFT transformation, the multiplexing of twiddle factor reference values and the sharing of hardware resources can be realized, and the storage space and the hardware resources occupied by the twiddle factors are reduced.

Description

Twiddle factor generating method and device in digital communication system and computer equipment
Technical Field
The present application relates to the field of digital communication technologies, and in particular, to a twiddle factor generation method and apparatus in a digital communication system, and a computer device.
Background
For digital communication systems such as LTE (Long Term Evolution), NR (new radio, new air interface) and the like, which involve Orthogonal Frequency Division Multiplexing (OFDM), uplink of such digital communication systems generally employs single carrier transmission based on DFT spread OFDM (DFTs _ OFDM), and DFT (discrete Fourier Transform) and IFFT (Inverse Fast Fourier Transform) are sequentially implemented on uplink transmission links for data to be transmitted in order to reduce power loss. On the uplink, FFT (Fast Fourier Transform) and IDFT (Inverse Discrete Fourier Transform) are sequentially performed on the received data.
The DFT transformation/IDFT transformation and the IFFT transformation/FFT transformation are realized by computing through a butterfly operation unit, and twiddle factors are required to be used in the transformation process. The IDFT transform works similarly to the DFT transform, which is exemplified by the DFT transform
Figure SMS_2
Point DFT requirementsDecomposing by using a 2/3/4/5 butterfly basis and executing multi-stage butterfly operation, wherein the expression of the rotation factor used by each stage of butterfly operation is->
Figure SMS_5
Wherein is present>
Figure SMS_7
Is the DFT point of the current stage butterfly operation, is greater than or equal to>
Figure SMS_3
,/>
Figure SMS_4
,/>
Figure SMS_6
Is the butterfly base adopted by the butterfly operation of the current stage, and is greater or less than>
Figure SMS_8
One of 2, 3, 4 and 5 is taken. Likewise, the IFFT/FFT transformation also needs to use the twiddle factor @>
Figure SMS_1
Because the calculation of twiddle factors required by each level of butterfly operation in real time according to an expression affects the operation speed and is difficult to meet the requirement on rapidity of a digital communication system, the common practice is to store the twiddle factors under various points in advance and correspondingly search and use the twiddle factors when in use. Therefore, the DFT/IDFT and IFFT/FFT require a respective set of hardware resources to implement the storage and search operations, but the number of twiddle factors is large, which occupies a large amount of storage space and hardware resources.
Disclosure of Invention
In view of the above, it is necessary to provide a twiddle factor generation method, apparatus, computer device, computer readable storage medium, and computer program product in a digital communication system capable of generating twiddle factors required for DFT transform/IDFT transform and IFFT transform/FFT transform with less memory space and hardware resources.
In a first aspect, the present application provides a twiddle factor generation method in a digital communication system. The twiddle factor generation method comprises the following steps:
based on storage in a memory
Figure SMS_9
The reference value of each rotation factor, and the rotation factor used for executing butterfly operation at each stage in the process of generating time-frequency transformation by utilizing an interpolation algorithm>
Figure SMS_10
The realized time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation;
wherein stored in the memory
Figure SMS_12
The twiddle factor reference values include: based on->
Figure SMS_15
Make a circumference>
Figure SMS_17
Divided for unit angle>
Figure SMS_13
According to a parameter>
Figure SMS_14
Is continuously in the monotonically sequentially arranged value of>
Figure SMS_16
Each value is taken>
Figure SMS_18
For the maximum value of the number of points at which the FFT and IFFT transformations are carried out in a digital communication system, </or>
Figure SMS_11
And does not exceed a predetermined threshold.
In one embodiment, time-frequency is generatedTwiddle factor required in transformation process
Figure SMS_19
The method comprises the following steps:
determining parameters when performing a current level butterfly of the time-frequency transform
Figure SMS_21
,/>
Figure SMS_23
And &>
Figure SMS_25
Point number of current-stage butterfly operation based on time-frequency transformation>
Figure SMS_22
And the butterfly base used determines>
Figure SMS_24
Is a twiddle factor used by the time-frequency transformation>
Figure SMS_26
Is greater than or equal to>
Figure SMS_27
Is measured in units of angle with two adjacent reference values of the rotation factor>
Figure SMS_20
The multiple relationship between them;
based on parameters
Figure SMS_28
Is greater than or equal to>
Figure SMS_29
Determining two consecutive twiddle factor reference values stored in a memory as target twiddle factor reference values;
interpolation operation is carried out on the two target twiddle factor reference values by utilizing an interpolation algorithm to obtain twiddle factors required by the current-stage butterfly operation for executing time-frequency transformation
Figure SMS_30
In one embodiment, stored in memory
Figure SMS_31
The individual twiddle factor reference values are unsigned numbers,
Figure SMS_32
and stored in memory>
Figure SMS_33
The rotation factor reference values are based on>
Figure SMS_34
Make a circumference>
Figure SMS_35
Divided for unit angle>
Figure SMS_36
N-min in several values>
Figure SMS_37
And (4) taking values.
In one embodiment, the method of determining two target twiddle factor reference values comprises:
when in use
Figure SMS_38
Determining a corresponding target twiddle factor reference value
Figure SMS_39
When the temperature is higher than the set temperature
Figure SMS_40
When the corresponding target rotation factor reference value is determined->
Figure SMS_41
When in use
Figure SMS_42
Determining a corresponding target twiddle factor reference value
Figure SMS_43
When in use
Figure SMS_44
Determining a corresponding target twiddle factor reference value
Figure SMS_45
When the temperature is higher than the set temperature
Figure SMS_46
Determining a corresponding target twiddle factor reference value
Figure SMS_47
When in use
Figure SMS_48
Determining a corresponding target twiddle factor reference value
Figure SMS_49
When in use
Figure SMS_50
Determining a corresponding target twiddle factor reference value
Figure SMS_51
When in use
Figure SMS_52
Determining a corresponding target twiddle factor reference value
Figure SMS_53
;/>
Wherein the function
Figure SMS_54
Representing storage in memoryIs/are>
Figure SMS_55
A fifth of the rotation factor reference values>
Figure SMS_56
A reference value of a rotation factor, is greater than or equal to>
Figure SMS_57
Indicates the ^ th or greater in the memory>
Figure SMS_58
The real part of the reference value of the individual twiddle factors,
Figure SMS_59
indicates the ^ th or greater in the memory>
Figure SMS_60
An imaginary part of each twiddle factor reference value;
determining
Figure SMS_61
Corresponding target twiddle factor reference value->
Figure SMS_62
Obtaining two target twiddle factor reference values
Figure SMS_63
And &>
Figure SMS_64
In one embodiment, the interpolation algorithm is used for interpolating the reference values of the two target twiddle factors to obtain the twiddle factors
Figure SMS_65
The method comprises the following steps:
performing linear average interpolation on the reference values of the two target twiddle factors by using an average interpolation method to determine
Figure SMS_66
Wherein is present>
Figure SMS_67
Is based on>
Figure SMS_68
Determining a resulting target rotation factor reference value, <' > based on the comparison of the reference value with a reference value>
Figure SMS_69
Is based on>
Figure SMS_70
Determining the resulting reference value of the target rotation factor->
Figure SMS_71
Representing a pair>
Figure SMS_72
Shifting right by one position;
or, according to the parameters
Figure SMS_73
Is counted fraction portion of->
Figure SMS_74
Performing interpolation operation on the two target twiddle factor reference values to obtain twiddle factor->
Figure SMS_75
In one embodiment, the parameters are based on
Figure SMS_76
Fraction section of>
Figure SMS_77
Interpolating two target twiddle factor reference values to obtain twiddle factors>
Figure SMS_78
The method comprises the following steps:
determining
Figure SMS_81
Wherein is present>
Figure SMS_83
Is parameter->
Figure SMS_86
Is counted fraction portion of->
Figure SMS_80
The bit-width of (a) is,
Figure SMS_84
pair of representations
Figure SMS_85
Move right->
Figure SMS_87
Bit and/or>
Figure SMS_79
Indicates that 1 is left-shifted->
Figure SMS_82
A bit. />
In one embodiment, the parameters are based on
Figure SMS_88
Is counted fraction portion of->
Figure SMS_89
Interpolating two target twiddle factor reference values to obtain twiddle factors>
Figure SMS_90
The method comprises the following steps:
is determined as
Figure SMS_93
When, is greater or less>
Figure SMS_95
Otherwise->
Figure SMS_97
(ii) a Wherein the content of the first and second substances,
Figure SMS_92
indicates that 1 is left-shifted->
Figure SMS_94
Bit, wherein>
Figure SMS_96
Is parameter->
Figure SMS_98
Fractional part of
Figure SMS_91
Is determined.
In one embodiment, different points are stored in the memory
Figure SMS_99
Corresponding multiple relation->
Figure SMS_100
Based on a multiple relation>
Figure SMS_101
Comprises an integer part and a fractional part, and is based on a multiple relation>
Figure SMS_102
Is an unsigned number;
determining parameters when performing a time-frequency transform for a current stage butterfly operation
Figure SMS_103
The method comprises the following steps:
reading the number of points of butterfly operation of the current stage from the memory
Figure SMS_104
Corresponding multiple relation->
Figure SMS_105
And calculates the parameter->
Figure SMS_106
Second partyThe application also provides a twiddle factor generating device in the digital communication system. The twiddle factor generating device is used for generating twiddle factors based on the data stored in the memory
Figure SMS_107
The reference value of each rotation factor is generated by utilizing an interpolation algorithm, and the rotation factor used when butterfly operations at each level are executed in the time-frequency transformation process>
Figure SMS_108
The realized time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation;
wherein stored in the memory
Figure SMS_110
The twiddle factor reference values include: based on->
Figure SMS_113
Put the circumference in->
Figure SMS_114
Divided for unit angle>
Figure SMS_111
According to the parameter>
Figure SMS_112
Is continuously in the monotonically sequentially arranged value of>
Figure SMS_115
The value of each of the plurality of the values,
Figure SMS_116
for the maximum value of the number of points at which the FFT and IFFT transformations are carried out in a digital communication system, </or>
Figure SMS_109
And does not exceed a predetermined threshold.
In a third aspect, the present application also provides a computer device. The computer device comprises a memory and a processor, the memory storing a computer program, the memoryIn which a computer program is stored, characterized in that the memory also stores
Figure SMS_118
A twiddle factor reference value, stored in a memory>
Figure SMS_120
The twiddle factor reference values include: based on>
Figure SMS_123
Put the circumference in->
Figure SMS_119
Divided into unit angles>
Figure SMS_122
According to the parameter>
Figure SMS_124
Is continuously in the monotonically sequentially arranged value of>
Figure SMS_125
Each value is taken>
Figure SMS_117
For the maximum value of the number of points at which the FFT and IFFT transformations are carried out in a digital communication system, </or>
Figure SMS_121
And does not exceed a predetermined threshold;
based on memory storage when the processor executes the computer program
Figure SMS_126
The twiddle factor reference value implements the steps in the twiddle factor generation method in the digital communication system of the first aspect.
The twiddle factor generating method, the device and the computer equipment in the digital communication system store the values of partial twiddle factors in a memory as
Figure SMS_127
Based on the stored reference values of twiddle factors, the twiddle factors used by DFT transform, IDFT transform, FFT transform and IFFT transform in executing butterfly operation at each stage can be generated by interpolation operation>
Figure SMS_128
. The data volume of the twiddle factors stored in the memory is less, the storage space occupied by the twiddle factors is reduced, the twiddle factors do not need to be respectively stored aiming at DFT/IDFT transformation and FFT/IFFT transformation, the multiplexing of twiddle factor reference values and the sharing of hardware resources can be realized, and the storage space and the hardware resources occupied by the twiddle factors are further reduced.
The method utilizes an interpolation operation method to quickly and conveniently generate the twiddle factor, does not have more complicated addition and multiplication operations, has lower operation complexity, does not need to be realized by using a complicated logic circuit, occupies less hardware resources, can finish the calculation of the twiddle factor in one cycle of hardware, and meets the time sequence requirement.
Drawings
Fig. 1 is a communication link transmission diagram of a digital communication system to which a twiddle factor generation method is applied in one embodiment.
FIG. 2 is a flowchart illustrating a twiddle factor generation method according to an embodiment.
Fig. 3 is a block diagram showing a structure of a twiddle factor generating apparatus according to an embodiment.
FIG. 4 is a diagram illustrating an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The method for generating the twiddle factors in the digital communication system provided by the embodiment of the application can be applied to digital communication systems such as LTE and NR which adopt orthogonal frequency division multiplexing technology, the digital communication systems are used for realizing digital communication between a base station and user terminal equipment (UE), the UE can be but not limited to various personal computers, notebook computers, smart phones, tablet computers, internet of things equipment and portable wearable equipment, and the internet of things equipment can be smart speakers, smart televisions, smart air conditioners, smart car-mounted equipment and the like. The portable wearable device can be a smart watch, a smart bracelet, a head-mounted device, and the like. In LTE systems, the base station is called eNodeB, and in NR systems, the base station is called gdnodeb.
Referring to fig. 1, in an uplink transmission link of the digital communication system, after pre-processing operations such as bit level processing, scrambling modulation, layer mapping, etc., data to be transmitted is converted into subcarrier data in a frequency domain by DFT through a fast fourier transform core, then subjected to subcarrier mapping, converted into time domain data by IFFT through the fast fourier transform core, and transmitted by radio frequency after post-processing operations such as adding CP (Cyclic Prefix) and subcarrier offset. The uplink receiving link and the uplink sending link of the digital communication system are dual, received data are subjected to pretreatment operations such as cyclic prefix CP removal, FFT (fast Fourier transform) is achieved through a fast Fourier transform core, then subcarrier mapping is removed, IDFT (inverse discrete Fourier transform) is achieved through the fast Fourier transform core and is converted into time domain signals, and then receiving is achieved through corresponding post-treatment operations.
In one embodiment, as shown in fig. 2, a twiddle factor generation method is provided, which is illustrated by way of example as applied to the link structure of the digital communication system in fig. 1. The DFT transformation and the IDFT transformation are inverse transformation, and the transformation principle is the same. The FFT transform and the IFFT transform are inverse transforms to each other, and the transform principle is the same. The transform processes of DFT transform and FFT transform are also basically the same, so as shown in fig. 1, it can be considered that DFT transform, IDFT transform, FFT transform and IFFT transform are all implemented by a fast fourier transform core through computation by a butterfly operation unit, and only a butterfly basis used when the fast fourier transform core implements DFT transform and IDFT transform is different from a butterfly basis used when the FFT transform and IFFT transform are implemented, for example, when the DFT transform and IDFT transform are implementedThe butterfly bases used comprise radix-2 butterfly bases, radix-3 butterfly bases, radix-4 butterfly bases and radix-5 butterfly bases, and the butterfly bases used for realizing FFT (fast Fourier transform) and IFFT (inverse fast Fourier transform) comprise radix-2 butterfly bases and radix-5 butterfly bases. Therefore, the twiddle factor generation method provided by the present application can be considered as a method executed by the fast fourier transform kernel, and the method is based on the method stored in the memory
Figure SMS_129
A reference value of a rotation factor, which->
Figure SMS_130
The values of the reference values of the rotation factors are as follows:
based on
Figure SMS_132
In the form of a circle>
Figure SMS_135
Is divided into unit angles to obtain->
Figure SMS_137
According to a parameter>
Figure SMS_133
The values of the monotonic order of (a) is, i.e. for example take in turn->
Figure SMS_136
That all the pressing parameters can be found>
Figure SMS_138
Is arranged in monotonically increasing order->
Figure SMS_139
And (4) taking values. />
Figure SMS_131
For the maximum value of the number of points for implementing FFT and IFFT in the digital communication system, the number of points for implementing FFT and IFFT in the LTE system may be 128, 256, 1024, 1536, 2048, and the number of points for implementing FFT in the LTE system may be implementedMaximum value of the number of points in the transform and IFFT. The number of points in the NR system for implementing FFT and IFFT can be 128, 256, 1024, 1536, 2048, 4096, and the maximum value of the number of points in the NR system for implementing FFT and IFFT is ≥ h>
Figure SMS_134
This is taken in the present application
Figure SMS_140
Successive in value>
Figure SMS_141
Individual value as->
Figure SMS_142
A rotation factor reference value stored in memory, based on the rotation factor reference value>
Figure SMS_143
And does not exceed a predetermined threshold. In one embodiment, direct fetching ≧ for reduced data storage is provided within a scheme realizable range>
Figure SMS_144
I.e. only all of the resulting->
Figure SMS_145
In various values>
Figure SMS_146
Then 256 twiddle factor reference values are saved for the LTE system and 512 twiddle factor reference values are saved for the NR system.
This is achieved by
Figure SMS_149
The rotation factor reference value can be all->
Figure SMS_152
Successive-value beginning with any one of several values>
Figure SMS_154
A value, but for ease of subsequent operation and calculation, in one embodiment all ^ s are taken>
Figure SMS_148
A parameter in the individual value->
Figure SMS_151
Minimum->
Figure SMS_153
Individual value as->
Figure SMS_155
The individual twiddle factor reference values are stored, i.e. taken from>
Figure SMS_147
When corresponding to before->
Figure SMS_150
And (4) taking values.
Due to the fact that
Figure SMS_156
The twiddle factor reference values are all positive numbers, so that in one embodiment, a->
Figure SMS_157
The individual twiddle factor reference values are unsigned numbers, i.e. only stored->
Figure SMS_158
The data valid bit of each twiddle factor reference value reduces the storage space occupied by the sign bit.
Has stored in the memory
Figure SMS_159
In the case of a reference value for a twiddle factor, the method is based on ^ stored in the memory>
Figure SMS_160
The rotation factor reference value is used for executing butterfly operation at each level in the process of generating time-frequency transformation by utilizing interpolation algorithmRotating factor is greater or less>
Figure SMS_161
Here, the time-frequency transform includes DFT transform, IDFT transform, FFT transform, and IFFT transform.
This includes two meanings: for the uplink transmission link, based on storage in memory
Figure SMS_162
The twiddle factor reference value generates the twiddle factor ^ required for the DFT transform>
Figure SMS_163
And generates a rotation factor ≧ required for the IFFT transform>
Figure SMS_164
. Based on the ≥ stored in memory for the uplink receiving link>
Figure SMS_165
The twiddle factor reference value generates the twiddle factor ≥ necessary for the FFT transformation>
Figure SMS_166
And the rotation factor required to generate an IDFT transformation>
Figure SMS_167
Unlike the conventional method, two sets of hardware resources are required to be arranged for storing twiddle factors of DFT (discrete Fourier transform) and IDFT (inverse discrete Fourier transform) and for storing twiddle factors of FFT (fast Fourier transform) and IFFT (inverse fast Fourier transform), and the twiddle factors required by DFT and IDFT are generated and used in the memory when the twiddle factors required by FFT and IFFT are generated
Figure SMS_168
The twiddle factor reference value realizes the multiplexing of data and the sharing of hardware resources, and reduces the occupation of storage resources and hardware resources. Furthermore, the method according to the present application stores->
Figure SMS_169
The data size of each twiddle factor reference value is very limited, and the occupied storage space is small.
In the above method, twiddle factors required in the DFT transform, IDFT transform, FFT transform, and IFFT transform are generated
Figure SMS_170
The method (2) is the same, and the rotation factor required for generating any one of the above time-frequency transformation is generated>
Figure SMS_171
The method of (2) comprises the following steps, please refer to the embodiment shown in fig. 2:
step 220, determining the parameters for performing the time-frequency transformation of the butterfly operation of the current stage
Figure SMS_172
Twiddle factor of time-frequency transformation
Figure SMS_173
Is expressed as>
Figure SMS_174
Wherein is present>
Figure SMS_175
Points representing a current stage butterfly operation>
Figure SMS_176
The number of stages representing the butterfly operation of the current stage is a parameter starting from 0. The butterfly base adopted by the current stage butterfly operation is ^ or ^>
Figure SMS_177
For example, common butterfly bases for DFT transforms include radix-2, radix-3, radix-4, and radix-5 butterfly bases, and therefore ^ er>
Figure SMS_178
One of 2, 3, 4 and 5 is taken.
Number of points of level 0 butterfly
Figure SMS_179
Namely, the number of realized time-frequency transformation points is 34 for DFT transformation/IDFT transformation in the LTE system, and 53 for DFT transformation/IDFT transformation in the NR system. The number of points of FFT/IFFT in the LTE system is 5, 128, 256, 1024, 1536, 2048, and 4096, in total, can be selected from the FFT/IFFT in the NR system. Slave->
Figure SMS_180
At the beginning, the number of points of the butterfly operation of the current stage->
Figure SMS_181
Figure SMS_184
And &>
Figure SMS_185
Point ^ based on current-stage butterfly operation>
Figure SMS_190
And the butterfly base used>
Figure SMS_183
Determining ^ greater than or equal to a current stage butterfly>
Figure SMS_187
In common>
Figure SMS_188
The seed value is respectively equal to->
Figure SMS_191
. Asserted for the current stage butterfly operation>
Figure SMS_182
In common>
Figure SMS_186
The seed value is respectively equal to->
Figure SMS_189
Figure SMS_192
Is a twiddle factor used by the time-frequency transformation>
Figure SMS_193
Unit angle of>
Figure SMS_194
Is measured in units of angle with two adjacent reference values of the rotation factor>
Figure SMS_195
In a multiple relationship between, i.e. </or>
Figure SMS_196
In one embodiment, the current stage butterfly operation is obtained by calculation when the current stage butterfly operation of time-frequency transformation is performed
Figure SMS_197
And a number of points based on the current stage butterfly operation >>
Figure SMS_198
The multiple relation is calculated to be got>
Figure SMS_199
Then according to
Figure SMS_200
The parameter is calculated to be>
Figure SMS_201
In another embodiment, the multiple relationship is calculated
Figure SMS_202
The method involves division, consumes more computing resources, and therefore, when the method is implemented by hardware, the method does not need to be implemented in advanceOn-point number>
Figure SMS_203
Corresponding multiple relation->
Figure SMS_204
Stored in the storage relation, when the butterfly operation of the current stage is performed, the points which are in the butterfly operation of the current stage are read from the memory and are greater or less than or equal to the points in the butterfly operation of the current stage>
Figure SMS_205
Corresponding multiple relation->
Figure SMS_206
And then according to>
Figure SMS_207
The parameter is calculated to be>
Figure SMS_208
Due to multiple relation
Figure SMS_211
Therefore, the multiple relation>
Figure SMS_212
Comprises an integer part and a fractional part, but has a multiple relation>
Figure SMS_223
Is a positive number, and therefore stores a multiple relationship>
Figure SMS_210
When, the multiple relation->
Figure SMS_222
Is unsigned, i.e. likewise only stores the multiple relation->
Figure SMS_215
The data valid bit of (a). Assume a multiple relationship->
Figure SMS_221
Has a total bit width of &>
Figure SMS_216
Based on a multiple relation>
Figure SMS_224
Has a bit width of &>
Figure SMS_209
Then the multiple relation->
Figure SMS_218
Fractional part of is bit wide of->
Figure SMS_214
Multiple relationships can be combined>
Figure SMS_219
Is scaled as
Figure SMS_217
And the last flag bit->
Figure SMS_220
Represents a multiple relationship>
Figure SMS_213
Are unsigned numbers.
Figure SMS_226
And &>
Figure SMS_229
Are all integers and therefore->
Figure SMS_232
Also an integer, assume->
Figure SMS_227
Is/is->
Figure SMS_230
Then, then
Figure SMS_233
Is also bit wide, the integer part of (a)>
Figure SMS_235
Can combine>
Figure SMS_225
Is calibrated as->
Figure SMS_228
And the last flag bit->
Figure SMS_231
Represents->
Figure SMS_234
Are unsigned numbers.
Thus obtained parameters
Figure SMS_245
Or comprise both an integer part and a fractional part, and a parameter +>
Figure SMS_244
Integer part of
Figure SMS_256
Is bit wide of->
Figure SMS_246
In the presence of a parameter>
Figure SMS_254
Fraction section of>
Figure SMS_243
Is bit wide of->
Figure SMS_255
. Thus, the parameter can be evaluated>
Figure SMS_237
Is greater than or equal to>
Figure SMS_251
Is scaled to >>
Figure SMS_242
Denotes an integer part->
Figure SMS_247
Is equal to->
Figure SMS_238
And the last flag bit->
Figure SMS_250
Represents->
Figure SMS_241
Are unsigned numbers. Can be selected based on the parameter>
Figure SMS_249
Is counted fraction portion of->
Figure SMS_236
Is calibrated as->
Figure SMS_248
Represents a fractional part +>
Figure SMS_240
Is greater than or equal to the total bit width and the fraction part bit width>
Figure SMS_252
And the last flag bit->
Figure SMS_239
Represents->
Figure SMS_253
Are unsigned numbers.
Such as for example in an LTE system,
Figure SMS_257
assuming that the point number of the DFT transform is 1152, the decomposition is 4X 3X 2, that is, 3-level radix-4 butterfly operation, 2-level radix-3, 1-level radix-2 butterfly operation, and 6 levels of butterfly operation:
number of points of level 0 butterfly
Figure SMS_258
The butterfly base used is the base-4 butterfly base, thus->
Figure SMS_259
Figure SMS_260
,/>
Figure SMS_261
,/>
Figure SMS_262
,/>
Figure SMS_263
Based on a multiple relation>
Figure SMS_264
Number of points of level 1 butterfly
Figure SMS_265
The butterfly base used is the base-4 butterfly base, thus->
Figure SMS_266
Figure SMS_267
,/>
Figure SMS_268
Based on a multiple relation>
Figure SMS_269
Number of points of level 2 butterfly
Figure SMS_270
The butterfly base used is the base-4 butterfly base, thus->
Figure SMS_271
。/>
Figure SMS_272
,/>
Figure SMS_273
Based on a multiple relation>
Figure SMS_274
Number of points of butterfly operation of level 3
Figure SMS_275
The butterfly base used is the base-3 butterfly base, thus->
Figure SMS_276
Figure SMS_277
,/>
Figure SMS_278
Based on a multiple relation>
Figure SMS_279
Number of points of level 4 butterfly
Figure SMS_280
The butterfly base used is the base-3 butterfly base, thus->
Figure SMS_281
Figure SMS_282
,/>
Figure SMS_283
Based on a multiple relation>
Figure SMS_284
Number of points of level 5 butterfly
Figure SMS_285
The butterfly base used is the base-2 butterfly base, thus->
Figure SMS_286
Figure SMS_287
,/>
Figure SMS_288
Based on a multiple relation>
Figure SMS_289
As can be seen from the above example, even if the multiples are related
Figure SMS_290
Pre-stored, also only requiring a per point count
Figure SMS_291
Storing a multiple relationship>
Figure SMS_292
The occupied storage space is also very limited.
Step 240, based on the parameters
Figure SMS_293
Is greater than or equal to>
Figure SMS_294
Determining two consecutive twiddle factor reference values stored in a memory as target twiddle factor reference value->
Figure SMS_295
And &>
Figure SMS_296
Determining the two obtained target twiddle factor reference values
Figure SMS_298
And &>
Figure SMS_300
I.e. is->
Figure SMS_303
The closest integer part of the individual twiddle factor reference values->
Figure SMS_299
Two values of (a). Based on parameters>
Figure SMS_302
Is greater than or equal to>
Figure SMS_305
Determining two target rotation factor reference values>
Figure SMS_307
And &>
Figure SMS_297
The method comprises the following steps: based on->
Figure SMS_301
Determining the resulting reference value of the target rotation factor->
Figure SMS_304
Based on
Figure SMS_306
And determining the obtained target twiddle factor reference value.
To be provided with
Figure SMS_308
One embodiment provides for example a based on +>
Figure SMS_309
Determining a target rotation factor reference value>
Figure SMS_310
The method comprises the following steps:
when in use
Figure SMS_311
When the corresponding target rotation factor reference value is determined->
Figure SMS_312
When in use
Figure SMS_313
Determining a corresponding target twiddle factor reference value
Figure SMS_314
When in use
Figure SMS_315
Determining a corresponding target twiddle factor reference value
Figure SMS_316
When the temperature is higher than the set temperature
Figure SMS_317
Determining a corresponding target twiddle factor reference value
Figure SMS_318
When in use
Figure SMS_319
Determining a corresponding target twiddle factor reference value
Figure SMS_320
When the temperature is higher than the set temperature
Figure SMS_321
Determining a corresponding target twiddle factor reference value
Figure SMS_322
When in use
Figure SMS_323
Determining a corresponding target twiddle factor referenceValue of
Figure SMS_324
。/>
When the temperature is higher than the set temperature
Figure SMS_325
Determining a corresponding target twiddle factor reference value
Figure SMS_326
Based on the above method, the integer part
Figure SMS_328
Determining one of the target rotation factor reference values->
Figure SMS_332
. In each of the above cases, the function->
Figure SMS_334
Representing stored in memory>
Figure SMS_329
The fifth of the rotation factor reference values>
Figure SMS_331
A reference value of a rotation factor, is greater than or equal to>
Figure SMS_333
Indicates the ^ th or greater in the memory>
Figure SMS_335
The real part of the reference value of the individual twiddle factors,
Figure SMS_327
indicates the ^ th or ^ th in the memory>
Figure SMS_330
The imaginary part of the individual twiddle factor reference values.
Can be determined to obtain by the same way
Figure SMS_338
Corresponding target rotation factor reference value>
Figure SMS_341
In one approach, the function may be based on the same method as described above>
Figure SMS_343
The range in which the corresponding target rotation factor reference value is determined>
Figure SMS_337
. Or alternatively, in the determination of the target rotation factor reference value->
Figure SMS_340
Then, it is determined directly whether or not the decision is positive>
Figure SMS_342
According to the parameter in the reference value of the rotation factor>
Figure SMS_344
Arranged in monotonically increasing order at pick>
Figure SMS_336
Followed by a twiddle factor reference value that is another target twiddle factor reference value>
Figure SMS_339
Step 260, using interpolation algorithm to reference two target twiddle factors
Figure SMS_345
And &>
Figure SMS_346
Carrying out interpolation operation to obtain a rotation factor (or greater than or equal to) required by the current-stage butterfly operation for executing time-frequency transformation>
Figure SMS_347
In one embodiment, mean interpolation is used directly to correct for two target rotation factorsThe sub-reference values are interpolated by linear average, i.e. determined
Figure SMS_348
Wherein is present>
Figure SMS_349
Representing a pair>
Figure SMS_350
And shifting right by one bit. Those skilled in the art will appreciate that in the field of bit operations, data is right shifted { [ MEANS } or } based>
Figure SMS_351
Bit representation divides data by pick>
Figure SMS_352
Left shift in data>
Figure SMS_353
Bit representation data multiplication by pick>
Figure SMS_354
In another embodiment, the two target twiddle factor reference values are not directly referenced to
Figure SMS_355
And &>
Figure SMS_356
Performs a linear average interpolation, but further on the basis of the parameter>
Figure SMS_357
Is counted fraction portion of->
Figure SMS_358
For two target twiddle factor reference values>
Figure SMS_359
And
Figure SMS_360
interpolation is carried out to obtain the rotation factorSub-device>
Figure SMS_361
. The method for this embodiment provides two implementations as follows:
(1) Combining fractional parts by linear interpolation
Figure SMS_364
For two target twiddle factor reference values>
Figure SMS_367
And &>
Figure SMS_368
Performing interpolation to determine->
Figure SMS_363
. Wherein it is present>
Figure SMS_366
Presentation pair
Figure SMS_369
Move right->
Figure SMS_370
Bit and/or>
Figure SMS_362
Indicates that 1 is left-shifted->
Figure SMS_365
A bit.
Figure SMS_371
Is parameter->
Figure SMS_372
Is counted fraction portion of->
Figure SMS_373
Is determined, as described above, fraction portion->
Figure SMS_374
Bit wide of
Figure SMS_375
Therefore also have
Figure SMS_376
(2) Combining fractional parts by nearest neighbor difference method
Figure SMS_380
For two target twiddle factor reference values>
Figure SMS_382
And
Figure SMS_385
performing interpolation operation to determine if>
Figure SMS_379
When, is greater or less>
Figure SMS_383
Otherwise
Figure SMS_386
. Wherein it is present>
Figure SMS_388
Represents a left shift by 1>
Figure SMS_377
A bit. Likewise, is present in>
Figure SMS_381
Is parameter->
Figure SMS_384
Is counted fraction portion of->
Figure SMS_387
Is thus also->
Figure SMS_378
Compared with the traditional table look-up methodProtocol comparison to twiddle factor: the traditional scheme of generating the twiddle factor based on the table look-up method needs to store each point
Figure SMS_394
Under->
Figure SMS_402
When taking a value->
Figure SMS_408
Then based on
Figure SMS_392
Generates an arbitrary value->
Figure SMS_399
The rotation factor of time. But as described above for the expression of the twiddle factor, the point is ≤>
Figure SMS_405
The value of the twiddle factor required by the current stage butterfly operation is determined by->
Figure SMS_413
Make a decision based on
Figure SMS_391
And &>
Figure SMS_396
Respective value is taken in>
Figure SMS_403
In common>
Figure SMS_409
Form a combination>
Figure SMS_390
A rotation factor of
Figure SMS_401
On the basis of which it is desired to combine with->
Figure SMS_407
Are combined respectively, even if at->
Figure SMS_411
Fixed rotation factor is->
Figure SMS_393
On a non-storage basis, it is also necessary to ≥ every point>
Figure SMS_397
Store the corresponding->
Figure SMS_404
An
Figure SMS_410
The value in the case. Compared with the method of storing all twiddle factors, the method can reduce the stored data size to a certain extent, but the points are greater or less in the LTE system>
Figure SMS_389
There are 61 values, points in the NR system->
Figure SMS_400
There are 89 values, which are combined with different values>
Figure SMS_406
The occupied storage space is still very large compared to the present application. And due to
Figure SMS_412
So that in order to reduce the effect of accumulated errors, it is not practical to store only @>
Figure SMS_395
Value in case->
Figure SMS_398
The number of stored twiddle factors is further increased, and the higher the precision requirement is, the more twiddle factors need to be stored, and the larger the occupied storage space is. The method of the present applicationA large number of twiddle factors do not need to be stored, and multiplexing can be realized by a small number of stored twiddle factor reference values, so that excessive storage area and hardware area do not need to be occupied, and the problem of accumulated errors does not exist.
Compared with the conventional cordic scheme for determining the twiddle factor: if the cordic scheme adopts an iteration method, although the resource consumption is low, the requirement on the number of cycles of the hardware is high, and if one iteration consumes one cycle of the hardware, 10 cycles are needed for calculating one twiddle factor, so that the cordic scheme is difficult to be applied to the situation of time sequence tension. If the cordic scheme adopts the pipeline scheme, although one twiddle factor can be calculated in one cycle of hardware to meet the timing requirement, the cordic scheme needs to be realized by adopting 30 adders and 20 shifters, and a large hardware area is occupied. The method has the advantages of low difficulty, high accuracy, no complex multiplication and addition operation, no need of using too many logic operation devices to occupy too much hardware area, and capability of completing calculation of a rotation factor in one cycle of hardware to meet the time sequence requirement.
It should be understood that, although the steps in the flowcharts related to the embodiments described above are shown in sequence as indicated by the arrows, the steps are not necessarily performed in sequence as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a part of the steps in the flowcharts related to the embodiments described above may include multiple steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, and the execution order of the steps or stages is not necessarily sequential, but may be rotated or alternated with other steps or at least a part of the steps or stages in other steps.
Based on the same inventive concept, the embodiment of the present application further provides a twiddle factor generating device in a digital communication system for implementing the twiddle factor generating method in the digital communication system. The implementation scheme for solving the problem provided by the apparatus is similar to the implementation scheme described in the above method, so specific limitations in one or more embodiments of the twiddle factor generation apparatus in the digital communication system provided below may refer to the above limitations on the twiddle factor generation method in the digital communication system, and are not described herein again.
In an embodiment, referring to fig. 3, a twiddle factor generating apparatus 300 in a digital communication system is provided, where the twiddle factor generating apparatus 300 is configured to generate twiddle factors used in performing butterfly operations at each stage in a time-frequency transformation process by using an interpolation algorithm based on twiddle factor reference values stored in a memory 400, and the implemented time-frequency transformation includes DFT transformation, IDFT transformation, FFT transformation, and IFFT transformation.
Wherein stored in the memory 400
Figure SMS_416
The twiddle factor reference values include: based on->
Figure SMS_417
To be circumferentially arranged with
Figure SMS_420
Divided for unit angle>
Figure SMS_415
According to the parameter>
Figure SMS_418
Is continuously in the monotonically sequentially arranged value of>
Figure SMS_419
Each value is taken>
Figure SMS_421
For the maximum value of the number of points at which the FFT and IFFT transformations are carried out in a digital communication system, </or>
Figure SMS_414
And does not exceed a predetermined threshold.
The modules in the twiddle factor generating device can be implemented in whole or in part by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent of a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a server, the internal structure of which may be as shown in fig. 4. The computer device includes a processor, a memory, and a network interface connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The database of the computer device is used for storing
Figure SMS_422
A rotation factor reference value and also for storing different points @>
Figure SMS_423
Corresponding multiple relation->
Figure SMS_424
. The network interface of the computer equipment is used for connecting and communicating with an external terminal through a network, and comprises an I/O interface and a communication interface. The computer program is executed by a processor to implement a twiddle factor generation method in a digital communication system.
It will be appreciated by those skilled in the art that the configuration shown in fig. 4 is a block diagram of only a portion of the configuration associated with the present application, and is not intended to limit the computing device to which the present application may be applied, and that a particular computing device may include more or fewer components than shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided comprising a memory having a computer program stored therein and a processor, the memory further having stored therein a computer program
Figure SMS_427
A twiddle factor reference value, stored in memory>
Figure SMS_430
The twiddle factor reference values include: based on>
Figure SMS_432
Put the circumference in->
Figure SMS_426
Divided for unit angle>
Figure SMS_429
According to the parameter>
Figure SMS_431
Is continuously in the monotonically sequentially arranged value of>
Figure SMS_433
Each value is taken>
Figure SMS_425
For the maximum value of the number of points at which the FFT and IFFT transformations are carried out in a digital communication system, </or>
Figure SMS_428
And does not exceed a predetermined threshold.
The processor, when executing the computer program, implements the steps of: based on storage in a memory
Figure SMS_434
Each rotating factor reference value is generated by utilizing an interpolation algorithm, and the rotating factor used in butterfly operation at each level is performed in the time-frequency transformation process>
Figure SMS_435
"ShiThe existing time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation.
In one embodiment, a computer-readable storage medium is provided, having a computer program stored thereon, which when executed by a processor, performs the steps of:
based on storage in memory
Figure SMS_436
Each rotating factor reference value is generated by utilizing an interpolation algorithm, and the rotating factor used in butterfly operation at each level is performed in the time-frequency transformation process>
Figure SMS_437
The realized time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation;
wherein stored in the memory
Figure SMS_439
The twiddle factor reference values include: based on->
Figure SMS_441
To be circumferentially arranged with
Figure SMS_443
Divided for unit angle>
Figure SMS_438
According to a parameter>
Figure SMS_442
In monotonically sequentially arranged values of (a) is continuously +>
Figure SMS_444
Each value is taken>
Figure SMS_445
For the maximum value of the number of points when the FFT transform and the IFFT transform are implemented in the digital communication system,
Figure SMS_440
and does not exceed the predeterminedAnd (4) a threshold value.
In one embodiment, a computer program product is provided, comprising a computer program which when executed by a processor performs the steps of:
based on storage in a memory
Figure SMS_446
Each rotating factor reference value is generated by utilizing an interpolation algorithm, and the rotating factor used in butterfly operation at each level is performed in the time-frequency transformation process>
Figure SMS_447
The realized time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation;
wherein stored in the memory
Figure SMS_449
The twiddle factor reference values include: based on->
Figure SMS_452
To be circumferentially arranged with
Figure SMS_454
Divided for unit angle>
Figure SMS_448
According to the parameter>
Figure SMS_451
Is continuously in the monotonically sequentially arranged value of>
Figure SMS_453
Each value is taken>
Figure SMS_455
For the maximum value of the number of points in the digital communication system for which an FFT and an IFFT transformation are implemented, <' > or>
Figure SMS_450
And does not exceed a predetermined threshold.
It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) referred to in the present application are information and data authorized by the user or sufficiently authorized by each party.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above may be implemented by hardware instructions of a computer program, which may be stored in a non-volatile computer-readable storage medium, and when executed, may include the processes of the embodiments of the methods described above. Any reference to memory, database, or other medium used in the embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, high-density embedded nonvolatile Memory, resistive Random Access Memory (ReRAM), magnetic Random Access Memory (MRAM), ferroelectric Random Access Memory (FRAM), phase Change Memory (PCM), graphene Memory, and the like. Volatile Memory can include Random Access Memory (RAM), external cache Memory, and the like. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM), among others. The databases referred to in various embodiments provided herein may include at least one of relational and non-relational databases. The non-relational database may include, but is not limited to, a block chain based distributed database, and the like. The processors referred to in the embodiments provided herein may be general purpose processors, central processing units, graphics processors, digital signal processors, programmable logic devices, quantum computing based data processing logic devices, etc., without limitation.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the present application. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present application shall be subject to the appended claims.

Claims (7)

1. A twiddle factor generation method in a digital communication system, the twiddle factor generation method comprising:
based on storage in a memory
Figure QLYQS_1
The reference value of each rotation factor is generated by utilizing an interpolation algorithm, and the rotation factor used when butterfly operations at each level are executed in the time-frequency transformation process>
Figure QLYQS_2
The implemented time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation, and the twiddle factors needed by the DFT transformation and the IDFT transformation and the twiddle factors needed by the FFT transformation and the IFFT transformation are generated by using the stored ^ and/or the stored value in the memory>
Figure QLYQS_3
Number of twiddle factor reference value, implement>
Figure QLYQS_4
Multiplexing of individual twiddle factor reference values;
wherein, stored in the memory
Figure QLYQS_7
The twiddle factor reference values include: based on->
Figure QLYQS_10
Put the circumference in->
Figure QLYQS_12
Divided into unit angles>
Figure QLYQS_6
According to the parameter>
Figure QLYQS_9
In the monotonically sequentially arranged values of (4), the succession in which n is smallest>
Figure QLYQS_11
Each value is taken>
Figure QLYQS_13
For the maximum value of the number of points in the digital communication system for which an FFT and an IFFT transformation are implemented, <' > or>
Figure QLYQS_5
Stored in the memory->
Figure QLYQS_8
Each twiddle factor reference value is an unsigned number;
wherein, the rotation factor required in the time-frequency transformation process is generated
Figure QLYQS_18
The method comprises the following steps: determining a parameter @ when performing a current stage butterfly operation of the time-frequency transform>
Figure QLYQS_19
,/>
Figure QLYQS_29
And &>
Figure QLYQS_22
Points of butterfly operation at current stage based on time-frequency transformation
Figure QLYQS_31
And the butterfly base used>
Figure QLYQS_20
Determining, based on a butterfly operation in a current stage>
Figure QLYQS_28
In common>
Figure QLYQS_21
A species value of respectively
Figure QLYQS_27
(ii) a Asserted for the current stage butterfly operation>
Figure QLYQS_14
In common>
Figure QLYQS_25
Seed value of ^ er/receiver>
Figure QLYQS_17
;/>
Figure QLYQS_26
Is a twiddle factor used by the time-frequency transformation>
Figure QLYQS_23
Is greater than or equal to>
Figure QLYQS_30
Is measured in units of angle with two adjacent reference values of the rotation factor>
Figure QLYQS_15
A multiple relationship therebetween;based on a parameter->
Figure QLYQS_24
Is greater than or equal to>
Figure QLYQS_16
Determining two consecutive twiddle factor reference values stored in the memory as target twiddle factor reference values, comprising:
when in use
Figure QLYQS_32
Determining a corresponding target twiddle factor reference value
Figure QLYQS_33
;/>
When in use
Figure QLYQS_34
Determining a corresponding target twiddle factor reference value
Figure QLYQS_35
When the temperature is higher than the set temperature
Figure QLYQS_36
Determining a corresponding target twiddle factor reference value
Figure QLYQS_37
When the temperature is higher than the set temperature
Figure QLYQS_38
Determining a corresponding target twiddle factor reference value
Figure QLYQS_39
When in use
Figure QLYQS_40
Determining a corresponding target twiddle factor reference value
Figure QLYQS_41
When in use
Figure QLYQS_42
Determining a corresponding target twiddle factor reference value
Figure QLYQS_43
When the temperature is higher than the set temperature
Figure QLYQS_44
Determining a corresponding target twiddle factor reference value
Figure QLYQS_45
When in use
Figure QLYQS_46
When the corresponding target rotation factor reference value is determined->
Figure QLYQS_47
Wherein the function
Figure QLYQS_48
Representing stored in said memory>
Figure QLYQS_49
The fifth of the rotation factor reference values>
Figure QLYQS_50
A reference value of a rotation factor, is greater than or equal to>
Figure QLYQS_51
Indicates the ^ th or ^ th in the memory>
Figure QLYQS_52
Real part of a reference value of a rotation factor,/>
Figure QLYQS_53
Indicates the ^ th or ^ th in the memory>
Figure QLYQS_54
An imaginary part of the individual twiddle factor reference values;
determining
Figure QLYQS_55
Corresponding target twiddle factor reference value->
Figure QLYQS_56
Obtaining two target twiddle factor reference values>
Figure QLYQS_57
And
Figure QLYQS_58
and performing interpolation operation on the two target rotation factor reference values by utilizing an interpolation algorithm to obtain a rotation factor (or greater than or equal to) required by executing the current-stage butterfly operation of the time-frequency transformation>
Figure QLYQS_59
2. The twiddle factor generation method according to claim 1, wherein the twiddle factor is obtained by interpolating two target twiddle factor reference values by using an interpolation algorithm
Figure QLYQS_60
The method comprises the following steps:
performing linear average interpolation on the reference values of the two target twiddle factors by using an average interpolation method to determine
Figure QLYQS_61
Wherein is present>
Figure QLYQS_62
Is based on>
Figure QLYQS_63
Determining the resulting reference value of the target rotation factor->
Figure QLYQS_64
Is based on>
Figure QLYQS_65
Determining the resulting reference value of the target rotation factor->
Figure QLYQS_66
Representing a pair>
Figure QLYQS_67
Shifting right by one position;
or, according to the parameters
Figure QLYQS_68
Is counted fraction portion of->
Figure QLYQS_69
Performing interpolation operation on the two target twiddle factor reference values to obtain twiddle factor->
Figure QLYQS_70
3. The twiddle factor generation method of claim 2, wherein the function-by-parameter is
Figure QLYQS_71
Fractional part of
Figure QLYQS_72
Performing interpolation operation on the two target twiddle factor reference values to obtain twiddle factor->
Figure QLYQS_73
The method comprises the following steps:
determining
Figure QLYQS_75
Wherein is present>
Figure QLYQS_78
Is the fractional part of the parameter->
Figure QLYQS_79
Bit width of +>
Figure QLYQS_76
Representing a pair>
Figure QLYQS_77
Move right->
Figure QLYQS_80
Bit and/or>
Figure QLYQS_81
Represents moving left to 1
Figure QLYQS_74
A bit.
4. The twiddle factor generation method of claim 2, wherein the function-based parameter is
Figure QLYQS_82
Fractional part of
Figure QLYQS_83
Interpolating two target twiddle factor reference values to obtain twiddle factors>
Figure QLYQS_84
The method comprises the following steps: />
Is determined when
Figure QLYQS_86
When, is greater or less>
Figure QLYQS_89
Otherwise->
Figure QLYQS_91
(ii) a Wherein it is present>
Figure QLYQS_87
Indicates that 1 is left-shifted->
Figure QLYQS_88
Bit, wherein>
Figure QLYQS_90
Is parameter->
Figure QLYQS_92
Fraction section of>
Figure QLYQS_85
Is determined.
5. The twiddle factor generation method according to claim 1, wherein different points are stored in the memory
Figure QLYQS_93
Corresponding multiple relation->
Figure QLYQS_94
In a multiple relationship>
Figure QLYQS_95
Comprises an integer part and a fractional part, and is based on a multiple relation>
Figure QLYQS_96
Is an unsigned number;
determining parameters when performing a current-level butterfly operation of the time-frequency transform
Figure QLYQS_97
The method comprises the following steps:
reading the number of points of butterfly operation of the current stage from the memory
Figure QLYQS_98
Corresponding multiple relation->
Figure QLYQS_99
And calculates the parameter->
Figure QLYQS_100
6. Twiddle factor generating apparatus in digital communication system, wherein the twiddle factor generating apparatus is configured to generate twiddle factors based on data stored in a memory
Figure QLYQS_101
Each rotating factor reference value is generated by utilizing an interpolation algorithm, and the rotating factor used in butterfly operation at each level is performed in the time-frequency transformation process>
Figure QLYQS_102
The realized time-frequency transformation comprises DFT transformation, IDFT transformation, FFT transformation and IFFT transformation;
wherein stored in the memory
Figure QLYQS_104
The twiddle factor reference values include: based on->
Figure QLYQS_107
Put the circumference in->
Figure QLYQS_109
Divided into unit angles>
Figure QLYQS_105
According to the parameter/>
Figure QLYQS_108
In the monotonically sequentially arranged values of (4), the succession in which n is smallest>
Figure QLYQS_110
The value of each of the plurality of the values,
Figure QLYQS_111
for the maximum value of the number of points in the digital communication system for which an FFT and an IFFT transformation are implemented, <' > or>
Figure QLYQS_103
Stored in the memory->
Figure QLYQS_106
The rotation factor reference values are unsigned numbers;
the method for generating the twiddle factors required in the time-frequency transformation process by the twiddle factor generating device comprises the following steps: determining parameters when performing a current level butterfly of the time-frequency transform
Figure QLYQS_116
,/>
Figure QLYQS_115
And &>
Figure QLYQS_128
Number of points of a current stage butterfly operation based on the time-frequency transformation->
Figure QLYQS_118
And the butterfly base used>
Figure QLYQS_122
Determining ^ greater than or equal to a current stage butterfly>
Figure QLYQS_120
In common>
Figure QLYQS_123
The seed value is respectively equal to->
Figure QLYQS_114
(ii) a Before stage butterfly operation->
Figure QLYQS_124
In common>
Figure QLYQS_112
A seed value is respectively
Figure QLYQS_125
;/>
Figure QLYQS_117
Is a rotation factor used by a time-frequency transformation>
Figure QLYQS_127
Is greater than or equal to>
Figure QLYQS_119
Is measured in units of angle with two adjacent reference values of the rotation factor>
Figure QLYQS_121
The multiple relationship between them; based on a parameter->
Figure QLYQS_113
Integer part of
Figure QLYQS_126
Determining two consecutive twiddle factor reference values stored in the memory as target twiddle factor reference values, including:
when in use
Figure QLYQS_129
Determining a corresponding target twiddle factor reference value
Figure QLYQS_130
When in use
Figure QLYQS_131
Determining a corresponding target twiddle factor reference value
Figure QLYQS_132
When in use
Figure QLYQS_133
Determining a corresponding target twiddle factor reference value
Figure QLYQS_134
When in use
Figure QLYQS_135
Determining a corresponding target twiddle factor reference value
Figure QLYQS_136
When in use
Figure QLYQS_137
Determining a corresponding target twiddle factor reference value
Figure QLYQS_138
When in use
Figure QLYQS_139
Determining a corresponding target twiddle factor reference value
Figure QLYQS_140
;/>
When the temperature is higher than the set temperature
Figure QLYQS_141
Determining a corresponding target twiddle factor reference value
Figure QLYQS_142
When in use
Figure QLYQS_143
Determining a corresponding target twiddle factor reference value
Figure QLYQS_144
Wherein the function
Figure QLYQS_145
Represents a->
Figure QLYQS_146
The fifth of the rotation factor reference values>
Figure QLYQS_147
A reference value of a rotation factor, is greater than or equal to>
Figure QLYQS_148
Indicates the ^ th or ^ th in the memory>
Figure QLYQS_149
The real part of the reference value of the respective rotation factor->
Figure QLYQS_150
Indicates the ^ th or ^ th in the memory>
Figure QLYQS_151
An imaginary part of the individual twiddle factor reference values;
determining
Figure QLYQS_152
Corresponding target twiddle factor reference value->
Figure QLYQS_153
Obtaining two target twiddle factor reference values>
Figure QLYQS_154
And
Figure QLYQS_155
and performing interpolation operation on the two target rotation factor reference values by utilizing an interpolation algorithm to obtain a rotation factor (or greater than or equal to) required by executing the current-stage butterfly operation of the time-frequency transformation>
Figure QLYQS_156
7. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the memory further stores
Figure QLYQS_158
A twiddle factor reference value stored in the memory @>
Figure QLYQS_161
The twiddle factor reference values include: based on->
Figure QLYQS_163
Make a circumference>
Figure QLYQS_159
Divided for unit angle>
Figure QLYQS_160
According to the parameter>
Figure QLYQS_164
In the monotonically sequentially arranged values of (4), the succession in which n is smallest>
Figure QLYQS_166
A number of values in conjunction with>
Figure QLYQS_157
For the maximum value of the number of points in the digital communication system for which an FFT and an IFFT transformation are carried out, ->
Figure QLYQS_162
Stored in the memory->
Figure QLYQS_165
The rotation factor reference values are unsigned numbers;
based on memory storage when the processor executes the computer program
Figure QLYQS_167
The individual twiddle factor reference values implement the steps of the method of any one of claims 1 to 5. />
CN202211496163.4A 2022-11-28 2022-11-28 Twiddle factor generation method and device in digital communication system and computer equipment Active CN115544438B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211496163.4A CN115544438B (en) 2022-11-28 2022-11-28 Twiddle factor generation method and device in digital communication system and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211496163.4A CN115544438B (en) 2022-11-28 2022-11-28 Twiddle factor generation method and device in digital communication system and computer equipment

Publications (2)

Publication Number Publication Date
CN115544438A CN115544438A (en) 2022-12-30
CN115544438B true CN115544438B (en) 2023-04-18

Family

ID=84722698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211496163.4A Active CN115544438B (en) 2022-11-28 2022-11-28 Twiddle factor generation method and device in digital communication system and computer equipment

Country Status (1)

Country Link
CN (1) CN115544438B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117591784B (en) * 2024-01-19 2024-05-03 武汉格蓝若智能技术股份有限公司 FPGA-based twiddle factor calculation method and FPGA chip

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102045279A (en) * 2009-10-21 2011-05-04 中兴通讯股份有限公司 Generation method and device of rotation factor
CN102111365A (en) * 2009-12-28 2011-06-29 重庆重邮信科通信技术有限公司 Discrete Fourier transform (DFT)/inverse discrete Fourier transform (IDFT) rotation factor control method, device and DFT/IDFT arithmetic device for long term evolution (LTE) system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3872724B2 (en) * 2002-06-11 2007-01-24 シャープ株式会社 Rotation factor table for fast Fourier transform and fast Fourier transform device using the same
US20070266070A1 (en) * 2006-05-12 2007-11-15 Chung Hua University Split-radix FFT/IFFT processor
CN112835073A (en) * 2021-02-05 2021-05-25 重庆九洲星熠导航设备有限公司 FFT (fast Fourier transform) processor for satellite signal acquisition
CN114090948A (en) * 2021-10-12 2022-02-25 哲库科技(北京)有限公司 Twiddle factor determination method and device, electronic equipment and storage medium
CN114814815A (en) * 2022-03-16 2022-07-29 华域汽车系统股份有限公司 Method for solving signal processing crossing loss based on interpolation and single-point DFT filtering

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102045279A (en) * 2009-10-21 2011-05-04 中兴通讯股份有限公司 Generation method and device of rotation factor
CN102111365A (en) * 2009-12-28 2011-06-29 重庆重邮信科通信技术有限公司 Discrete Fourier transform (DFT)/inverse discrete Fourier transform (IDFT) rotation factor control method, device and DFT/IDFT arithmetic device for long term evolution (LTE) system

Also Published As

Publication number Publication date
CN115544438A (en) 2022-12-30

Similar Documents

Publication Publication Date Title
AU2004297978A1 (en) FFT architecture and method
CN115544438B (en) Twiddle factor generation method and device in digital communication system and computer equipment
US8917588B2 (en) Fast Fourier transform and inverse fast Fourier transform (FFT/IFFT) operating core
Oruklu et al. Reduced memory and low power architectures for CORDIC-based FFT processors
US9727531B2 (en) Fast fourier transform circuit, fast fourier transform processing method, and program recording medium
CN111737638A (en) Data processing method based on Fourier transform and related device
EP3370161B1 (en) Adapting the processing of decomposed ffts to match the number of data points processed in parallel
US8838661B2 (en) Radix-8 fixed-point FFT logic circuit characterized by preservation of square root-i operation
US20100179978A1 (en) Fft-based parallel system with memory reuse scheme
Gautam et al. Hardware efficient design of variable length FFT processor
US20140365547A1 (en) Mixed-radix pipelined fft processor and fft processing method using the same
US8484273B1 (en) Processing system and method for transform
Ma et al. Simplified addressing scheme for mixed radix FFT algorithms
US8832171B2 (en) Index generation scheme for prime factor algorithm based mixed radix discrete fourier transform (DFT)
TW200811672A (en) Optimized multi-mode DFT implementation
Yu et al. Low-complexity twiddle factor generator for FFT processors
Malashri et al. Low power and memory efficient FFT architecture using modified CORDIC algorithm
CN108809883B (en) DFT implementation system and method for PRACH baseband signal
US8601045B2 (en) Apparatus and method for split-radix-2/8 fast fourier transform
CN111291315A (en) Data processing method, device and equipment
CN105608054A (en) FFT/IFFT device and method based on LTE system
Gupta et al. A high-speed single-path delay feedback pipeline FFT processor using vedic-multiplier
US9805000B1 (en) Method and apparatus for reordering mixed radix fast Fourier transform outputs
CN113094639B (en) DFT parallel processing method, device, equipment and storage medium
KR101036873B1 (en) Flag based low-complexity, expandable split radix fft system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant