The present invention relates to the Discrete Multitone (DMT) technology and, more particularly, to the Inverse Fast Fourier Transform (IFFT), the modulation kernel. By exploiting the symmetric/anti-symmetric properties of the input sequences, we add a new pre-processing scheme to further reduce the computational and the hardware complexity of the IFFT.
Orthogonal transforms and transformation properties are extraordinarily useful in solving new technological problems. Such transforms permit analysis of most signals given some knowledge of its constituent parts. The Fourier transformation in particular has become a powerful tool in increasingly diverse fields including linear systems, communications systems, image processing applications, etc.
The discrete Fourier transformation (DFT) is the counterpart of the Fourier transformation in the discrete time domain. In general, the DFT may be defined as follows:
and the inverse DFT (IDFT) is expressed as:
In equations (1) and (2), N is the amount of the sample, x(n) is the sample value in the time domain, and X(k) is the sample value in the frequency domain.
Direct calculation of the DFT and the IDFT is complex. It requires N2 multiplications and N(N−1) additions. Such computational may reduce signal processing speed, increased power consumption, and higher expense. One important tool in modern digital signal processing applications that helps to reduce that overhead is the Fast Fourier Transformation (FFT). By introducing the concept of divide-and-conquer, both the numbers of multiplication and addition are reduced to Nlog2N
In Discrete Multitone (DMT)-based ADSL system, a 512-point IFFT/FFT module is required to perform the modulation/demodulation kernel. At the transmitter side of the DMT system, to ensure the IFFT generates only real-valued outputs, the inputs of the IFFT have the constraint
X(k)=X*(2N−k) for k=0, 1, . . . , N−1 (4)
where N=256 and
X(k)≡Xr(k)+j·Xi(k) (5)
are encoded complex symbols with X(0)=X(N)=0. Here, Xr(k) and Xi(k) indicate the real part and imaginary part of X(k) respectively. As defined
in equation (2), the IDFT of a 2N samples sequence is where, in accordance with the equation (3)
In accordance with U.S. Pat. No. 6,157,938, the equation (6) is decomposed by the first half and the second half by decomposing the index k, and using the facts that X(0)=X(N)=0. Therefore, the equation (6) becomes
Next, by applying the constraint of equation (4) and substituting equations (5) and (7) into (8), we can simplify equation (9) as follows:
The equation (9) Fourier Transformation calculation includes two parts, the first term is Modified Discrete Cosine Transformation (MDCT) and the second term is Modified Discrete Sine Transformation (MDST). We use subscripts r and i to indicate that the operations are performed on the real and imaginary parts of input symbol X(k), respectively. Note that the MDCTr(n) and MDSTi(n) involve only real-valued operators. Furthermore, from equation (10) it can be shown that
Consequently, calculation of equation (9) can be focused on the calculations of MDCTr(n) function and MDSTi(n) function for n=0, 1, . . . , N−1. Then the calculations of the MDCTr(n) function and the MDSTi(n) function for n=N+1, . . . , 2N−1 are expanded based upon equation (11). In this manner, this simple relationship can save an additional 50% hardware/software complexity.
In U.S. Pat. No. 6,157,938, a time-recursive FFT architecture is provided. The modulation kernels of equation (9) are mapped to the VLSI architectures based on time-recursive lattice structure as shown in
However, in
The present invention meets this need and significantly reduces the number of complex computations that must be performed in computing the IFFT of real value sequences. The computational reduction increases signal processing speed and decreases power consumption, both of which are highly desirable in virtually every IFFT application. The present invention achieves these goals by taking advantage of various symmetries and regularities of processed data sequences.
The main purpose of the present invention is to provide a novel pre-processing scheme to modify the IFFT structure. By exploiting the symmetric and anti-symmetric properties of the input sequences, it can eliminate the redundant output from the lattice modules, and the required iteration number can be halved. The present invention may reduce the computational complexity and save the total hardware complexity.
In accordance with the present invention, an input data sequence is modified by exploiting the symmetric and anti-symmetric properties in order to eliminate the redundant output from the lattice modules. Then, an IFFT is performed on the modified input data sequence to generate a transformed sequence.
To achieve the foregoing objects, reducing the total iteration number of the IFFT structure, first using the symmetric and anti-symmetric properties to modify the real and imaginary part of the input signal and then mixing them together by an adder and feeding the results into the lattice module. Through the symmetric and anti-symmetric properties, the redundant terms may be eliminated. Because the real and imaginary part are mixed together for feeding into the lattice modules, only N iterations are required to obtain the final result, which reduces power consumption. On the other hand, the expanding circuit of the present invention does not include the multiplexers; therefore, it may reduce the complexity of the circuit design.
The objects, features and advantages of this invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings in which:
Without limiting the spirit and scope of the present invention, the method proposed in the present invention is illustrated with one preferred embodiment to provide a novel pre-processing scheme to modify the input sequences. By exploiting the symmetric and anti-symmetric properties of the input sequences, it can eliminate the redundant output from the lattice modules, and the required iteration number can be halved. Skilled artisans, upon acknowledging the embodiments, can apply the method according to the present invention to time-recursive IFFT structure to reduce the operation frequency. Realizing the present invention method in a circuit may reduce the power consumption and the complexity of the circuit. The application of the present invention is not limited by the following embodiment.
A preferred embodiment of the present invention provides efficient or simplified IFFT/FFT computations by taking advantage of Hermitian symmetry. In the formal definition of the IFFT/FFT, both x(n) and X(k) are assumed to be complex. If X(k) is an N-point Hermitian symmetric series, the Fourier transformation of X(k) is a real sequence, x(n). Regarding subscripts, the index for frequency sequences is k, sequences in the time domain are indexed by n.
In accordance with the preferred embodiment of the present invention, an assumption is made that a 512-point IFFT/FFT module is required to perform the modulation/demodulation kernel. If X(k) is a 2N (N=256) point Hermitian symmetric series, the inputs of the IFFT have the constraint
X(k)=X*(2N−k) for k=0, 1, . . . , N−1
where N=256 and
X(k)≡Xr(k)+j·Xi(k)
wherein X(0)=X(N)=0. Here, Xr(k) and Xi(k) indicate the real part and imaginary part of X(k) respectively. As defined in equation (2), the IDFT of a 2N samples sequence is
By decomposing k into the first half and the second half and using the facts that X(0)=X(N)=0,
From the above equation, it can be determined that inverse Fast Fourier Transformation calculations include two-part operations of real numbers, where the first part is a discrete cosine transform-like operation with Xr(k) (wherein k=0, 1, . . . , N−1) as input, whereas the second part is a discrete sine transform-like operation with Xi(k) (wherein k=0, 1, . . . , N−1) as input. The subscripts r and i indicate that the operations are performed on the real and imaginary parts of input symbol X(k), respectively. For simplicity, the first part of above equation is defined as a modified discrete cosine transformation (MDCTr) function and the second part as a modified sine transformation (MDSTi) function.
However, in accordance with the prior art, the inverse Fast Fourier Transformation calculations may be determined by calculating the MDCTr(n) function and MDSTi(n) function where n=0, 1, . . . , N−1. Namely, 2N iterations are required to obtain the final inverse Fast Fourier Transformation calculations results, which result in extra N-cycle latency in practical implementations.
Therefore, to reduce the total iteration number of the inverse Fast Fourier Transformation calculations, the Xr(k) and Xi(k) are mixed together to be fed into the lattice module. Since the lattice module is a linear system, based on superposition theory, the superposition input obtains the superposition outputs after N iterations. Because the imaginary parts are input together, the upper output of the lattice module includes the desired value MDCTr(n) and the additional value MDCTi(n). Similarly, because the real parts are input together, the lower output of the lattice module includes the desired value MDSTi(n) and the additional value named MDSTr(n).
In other words, the upper output is as follows:
the upper output=MDCTr(n)+MDCTi(n)
And the lower output is as follows:
the lowwer output=MDSTr(n)+MDSTi(n)
Note that the terms MDCTi(n), and MDSTr(n) are not the desired results. They are mixed with the desired part.
The considered reduction in the number of the iterations is achieved by deleting the undesired part, MDCTi(n) and MDSTr(n). First, in accordance with the relationship is shown in the follows.
The sequence cos(2πnk/2N and the sequence sin(2πnk/2N) exhibits symmetric and anti-symmetric characteristics in accordance with the “n” value, which is odd or even.
When n is odd, assuming N=64, n=1
On the other hand, when n is even, assuming N=64, n=2
Consider a symmetric sequence; Ys(k), the product Ys(k) with the anti-symmetrical sequence cos(2πnk/2N) will form a new anti-symmetric sequence, Ys(k)cos(2πnk/2N). The summation of the product will be zero when n is odd.
On the other hand, consider an anti-symmetric sequence, Ya(k); the product Ya(k) with the symmetries sequence cos(2πnk/2N) will form a new anti-symmetric sequence, Ya(k)cos(2πnk/2N). The summation of the product will be zero when n is even.
Similarly, the sequence sin(2πnk/2N) also exhibits the symmetric and anti-symmetric characteristic in accordance with the “n” value, which is odd or even.
When n is odd, assuming N=64, n=1
On the other hand, when n is even, assuming N=64, n=2
Consider an anti-symmetric sequence, Ya(k), the product Ya(k) with the symmetrical sequence sin(2πnk/2N) forms a new anti-symmetric sequence, Ya(k)sin(2πnk/2N). The summation of the product is zero when n is odd.
On the other hand, consider a symmetric sequence; Ys(k), the product Ys(k) with the anti-symmetrical sequence sin(2πnκ/2N) forms a new anti-symmetric sequence, Ys(k)sin(2πnk/2N). The summation of the product is zero when n is even.
Now, consider the upper output, namely, if the Xr(k) and Xi(k) are mixed together to be fed into the lattice module, the upper output is as follows:
the lower output is as follows:
The MDCTr(n) and MDSTi(n) are the desired parts and the MDCTi(n) and MDSTr(n) should be deleted. Therefore, by changing the Xi(k) to an even function or odd function, the MDCTi(n) may be deleted.
Accordingly, if the input sequence X(k), k=0, 1, . . . N−1, is a random sequence and Xr(k) and Xi(k) indicate the real part and imaginary parts of X(k). Since any sequence can be decomposed into a symmetric part and anti-symmetric part, we decompose the imaginary part Xi(k) according to an identified modification pattern into the following equations:
symmetric signal: Xis(k)=Xi(k)+Xi(N−k) (i)
anti-symmetric signal: Xia(k)=Xi(k)−Xi(N−k) (ii)
Therefore, for eliminating the redundant term, MDCTi(n), from the upper output, when n is odd, the cos(2πnk/2N) will be an anti-symmetrical sequence. Therefore, the symmetries sequence Xis(k) is sent into the module to make the MDCTi(n) zero. On the other hand, when n is even, the cos(2πnk/2N) will be a symmetries sequence. Therefore, the anti-symmetrical sequence Xia(k) is sent into the module to make the MDCTi(n) be zero. However, because the input signal Xi(k) is changed, the lower output MDSTi(n) will be as follows:
The desired result, MDSTi(n), is kept. At the same time, the redundant term MDCTi(n) may also be eliminated. Therefore, in accordance with the foregoing description, the input imaginary sequence, Xi′(k), is modified according to an identified modification pattern as follows:
Xi′(k)=Xi(k)+(−1)n+1·Xi(N−k)
On the other hand, considering the lower output.
The MDSTi(n) are the desired parts and the MDSTr(n) should be deleted. Therefore, by changing the Xr(k) to an even function or an odd function, the MDSTr(n) may be deleted.
Similarly, since any sequence can be decomposed into a symmetric part and an anti-symmetric part, we decompose the real Xr(k) according to a modification identified pattern into the following:
symmetric signal: Xrs(k)=Xr(k)+Xr(N−k) (i)
anti-symmetric signal: Xra(k)=Xr(k)−Xr(N−k) (ii)
Therefore, for eliminating the redundant term, MDSTr(n), from the lower output, when n is odd, the sin(2πnk/2N) will be a symmetrical sequence. Therefore, the anti-symmetrical sequence Xra(k) is sent into the module to make the MDSTr(n) zero. On the other hand, when n is even, the sin(2πnk/2N) will be an anti-symmetrical sequence. Therefore, the symmetrical sequence Xrs(k) is sent into the module to make the MDSTr(n) zero. However, because the input signal Xr(k) is changed, the upper output MDCTr(n) is as follows:
The desired result, MDCTr(n) is kept. At the same time, the redundant term MDSTr(n) may also be eliminated. Therefore, in accordance with the foregoing description, the input real sequence Xr′(k), is modified according to the identified modification pattern as follows:
Xr′(k)=Xr(k)+(−1)n·Xr(N−k)
As a result, the real sequence with the imaginary sequence may be added together to feed into the lattice module simultaneously to obtain the correct result. In summary, the generalized input sequence X
(k), can be expressed as follows:
The symmetric/anti-symmetric sequences of input data can be easily generated by a pre-processing module, which consists of some buffers and adders as shown in
The overall inverse Fast Fourier Transformation lattice structure is drawn in
However, in accordance with the present invention, it is not necessary to use the multiplexers in the expanding circuit because the present invention provides a modified input sequence that can eliminate the redundant output. Reference is again made to
Therefore, the output 2MDSTi(1) is multiplied by (−1). Furthermore, since the output of the lattice module further includes a multiplication of 2, the data output from the expanding circuit is shifted right by log2(2N) bits by the corresponding hard-wiring right shifters for outputting data x(0), x(1), x(2), . . . , x(2N−1).
On the other hand, the MDCT function and MDST function demonstrate the following characteristic:
MDCT(k)=MDCT(2N−k)
MDST(k)=−MDST(2N−k)
Therefore, the expanding circuit may extend the calculations of MDCT(k) and MDST(k) in k=N, N+1, . . . , 2N−1. The following is an example.
The two outputs of lattice module IM1 may also get the x(2N−1) result. In other words, the adder A2 receives the output data 2MDCT(1) and 2MDST(1) of the lattice module IM1 and connects to the corresponding hard-wiring right shifter to get the output x(2N−1).
Moreover, in accordance with the following equation:
x(0)=MDCT(0)−MDST(0)=MDCT(0)
x(N)=MDCT(N)−MDST(N)=(−1)nMDCT(N)
Therefore, x(0) and x(N) may be outputted respectively from the two terminals of the special module SC1.
In the following, the present invention architecture of Fast Fourier Transformation is compared with the prior art of U.S. Pat. No. 6,157,938. The hardware complexity of hardware is shown in Table 1, where the halved iteration number is the major improvement in this present invention. Under the same symbol rate, the power consumption of the IFFT can be reduced due to the halved processing speed. Besides, the numbers of multiplexer and register are also reduced after the modification.
A 2N-point Fast Fourier Transformation realized with a prior art structure includes one special module (SC1) and the (N−1) lattice modules IM1 to IMN−1. The special module SC1 includes two adders and each of the (N−1) lattice modules includes four real multipliers, three real adders and two registers. Therefore, the total (3N−1) adders, (4N−4) multipliers and (2N−2) registers are required for the (N−1) lattice modules and SC1. Besides, the expanding circuit includes additional 2(N−1) adders, (N−1) multiplexers and 2(N−1) registers. That is, the original structure requires 4(N−1) real multipliers and [5(N−1)+2] real adders in total.
On the other hand, the structure of the present invention also includes one special module (SC1) and the (N−1) lattice modules IM1 to IMN−1. The main different between the prior art and the present invention is the expanding circuit. It only requires (2N−2) adders. The multiplexers and the registers are not necessary. Therefore, the present invention may reduce the hardware complexity of the expanding circuit. More importantly, the iteration may also be reduced from 2N to N.
By utilizing the symmetric/anti-symmetric property of the data sequence, a more effective lattice structure for an IFFT module in a DMT transmitter is proposed. The iteration number has been halved such that the lattice module can work at a half clock rate. Hence, the power consumption can be reduced. On the other hand, the hardware in the expanding circuit has also been reduced. The sampling decimator is saved and routing becomes even simpler, too. These features make the proposed scheme a good candidate for cost-efficient IFFT implementation in the DMT-based ADSL system.
Although the present invention has been described in its preferred embodiment, it is not intended to limit the invention to the precise embodiment disclosed herein. Those who are skilled in this technology can still make various alterations and modifications without departing from the scope and spirit of this invention. Therefore, the scope of the present invention shall be defined and protected by the following claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
5633817 | Verhenne et al. | May 1997 | A |
6157938 | Wu et al. | Dec 2000 | A |
20030212722 | Jain et al. | Nov 2003 | A1 |
20040162866 | Malvar | Aug 2004 | A1 |
Number | Date | Country | |
---|---|---|---|
20030204544 A1 | Oct 2003 | US |