The present invention relates to System-on-a-Chip (SoC) implementation of a variety of communication systems. More specifically, the invention relates to a method of increasing the channel capacity of Inverse Fast Fourier Transform (IFFT) and the Fast Fourier Transform (FFT) engines without increasing die size of the chip.
In the first and last mile connections of telecommunication networks, various Digital Subscriber Line (xDSL) and wireless technologies play a dominate role. These technologies are usually based on a common fundamental technology: Discrete multitone (DMT) in xDSL or Orthogonal Frequency-Division Multiplexing (OFDM) in wireless. DMT and OFDM both use many narrow-band carriers all being transmitted simultaneously. Each narrow band or frequency bin carries part of the total information. Each of these narrow-bands is independently modulated—with a carrier frequency corresponding to the centre frequency of that bin—all bins are processed in parallel.
The centre of the DMT/OFDM technology is the IFFT and the FFT which perform the independent modulations and demodulations. In a SoC implementation of the xDSL or wireless modem, about 80-90% of the gates are for the implementation of the IFFT and FFT.
The customers of the first and last mile connections of a telecommunication network are end consumers, and they are very sensitive to pricing. Therefore, the first and last mile connection equipment must be manufactured to keep the lowest production cost possible in order to result in a reasonable profit on their sales.
In the semiconductor manufacture business, the cost of wafers is a major item in calculating the Bill of Material (BOM) cost. If a wafer can be divided into more dies during the semiconductor fabrication process, the per die BOM will be reduced. If a die can host more channels without increasing its size, the per channel BOM will also be reduced.
As the majority of the SoC die size is dedicated to the IFFT and FFT engines for the above applications, the per channel die size can be reduced by almost 50% if the channel capacity of the IFFT and FFT engines with the same clock rate and the same semiconductor fabrication process can be doubled.
The present invention relates to the System-on-a-Chip (SoC) implementation of a variety of communication systems, such as Very-high-bit-rate Digital Subscriber Line (VDSL), Asymmetric Digital Subscriber Line (ADSL) Transceivers family and any other systems employing Discrete multitone (DMT) or Orthogonal frequency-division multiplexing (OFDM) technology in base band.
Specifically, a method to increase, and in particular, double the channel capacity of the IFFT and FFT engines with the same clock rate and a similar number of gates on the silicon is disclosed. By using linear and symmetric properties of the FFT and IFFT, only one IFFT and one FFT engine is required to process two separate signals. Therefore, the per channel die size of the engine implementations in a SoC is cut by half.
Thus, according to one aspect, the invention provides a method of increasing channel capacity of a processing engine in a telecommunication network, the method comprising the steps of multiplexing separate telecommunication signals in pairs to produce at least one multiplexed signal; transmitting the multiplexed signal to the processing engine to create a processed multiplexed signal; and demultiplexing the processed multiplexed signal from the processing engine to produce separate processed telecommunication signals.
Another aspect of the invention provides a transmitter for a multi-carrier communications system comprising first and second input ports for respective first and second data streams; a multiplexer for combining said first and second data streams into a common data stream; a common inverse transform engine for performing an inverse transform operation on said common data stream; a demultiplexer for separating said common data stream into first and second output data streams; and first and second output ports for transmitting said output data streams on respective physical channels.
In yet another aspect the invention provides a receiver for a multi-carrier communications system comprising first and second input ports for receiving first and second input signals on respective physical channels; a multiplexer for combining said first and second input signals into a common data stream; a common transform engine for performing an transform operation on said common data stream; a demultiplexer for separating said transformed data stream into first and second output data streams; and first and second output ports for outputting said data streams.
Other aspects and advantages of embodiments of the invention will be readily apparent to those ordinarily skilled in the art upon a review of the following description.
The invention will now be described in more detail, by way of example only, with reference to the accompanying drawings, in which:—
The invention makes use of the linear and symmetric properties of the FFT and IFFT.
Let {x1(k)} and {x2(k)} be two 2N×1 real vectors, where N is an integer, and
{x(k)}={x(k)}+j{x2(k)} (Equation 1)
Further let
{x(n)}=FFT{x(k)} (Equation 2)
then
where X*(n) is the complex conjugate of X(n).
Using the above linear property, in accordance with the principles of the invention in the transmitter side two separate signals are combined before being sent to a single IFFT engine. The single output of the IFFT engine is separated and transmitted to two physical channels. Because only one IFFT engine is required to process two separate signals to be transmitted as opposed to two IFFT engines in the prior art, the per-channel die size of IFFT engine implementation in a SoC is cut by half.
Similarly, by using the above symmetric property of FFT, in the receiver side, two separate signals received from two physical channels are combined before being sent to a single FFT engine for demodulation. The output of the FFT engine is separated and demapped to restore the two independent data streams. Because only one FFT engine is required to process two signals received from two separate physical channels as opposed to two FFT engines in the prior art, the per-channel die size of FFT engine implementation in a SoC is cut by half.
Referring to
Let {X′1(n)} be an N×1 complex vector of such a batch of the complex numbers from channel 1 and {X′2(n)} be another N×1 complex vector of such a batch of the complex numbers from channel 2. {X′(n)} and {X′2(n)} are expanded to 2N×1 complex vectors {X1(n)} and {X2(n)} as follows:
In the prior art, shown in
{x1(k)}=Re{IFFT{X1(n)}} (Equation 7)
{x2(k)}=Re{IFFT{X2(n)}} (Equation 8)
These two real vectors are then sent to digital to analog converters in ports 24, 26 before being sent to the two separate physical channels. Two separate IFFT operations are required and hence two IFFT engines need to be implemented in a SoC silicon if the SoC is to process two channels.
In the above process, two IFFT operations are required and hence two IFFT engines need to be implemented in a SoC silicon if the SoC is to process two channels. If the channel size is to be increased, the die size must also be increased accordingly.
Using the linear properties outlined above in the transmitter side 50 two separate signals 18 and 16 sent from QAM mappers 20 and 22 are combined by Tx Port Mux 54 before being sent to a single IFFT engine 52. The single output 64 of the IFFT engine 52 is separated by Tx Port Demux 66 and transmitted to the digital-to-analog converters (DAC) of Ports 24, 26, and then to the two physical channels 25 and 27.
The incoming data stream is mapped to a sequence of complex numbers according to the constellation diagrams. The sequence of the complex numbers is then divided into batches of N=2M in length, where M is an integer.
In accordance with the principles of the invention {X1(n)} and {X2(n)} are combined into one 2N×1 complex vector {X(n)} as follows:
{X(n)}={X1(n)}+j{X2(n)} (Equation 9)
and the resulting 2N×1 complex vector {X(n)} is sent to one single IFFT engine 52. Equation 9 is the mathematical function performed in the Tx Port Mux module 62. The output of this single IFFT engine 52 is a complex 2N×1 complex vector {x(k)},
{x(k)}=IFFT{X(n)}. (Equation 10)
Two real 2N×1 real vectors {x1(k)} and {x2(k)} are generated by
{x(k)}=Re{x(k)} (Equation 11)
{x2(k)}=Im{x(k)} (Equation 12)
in the Tx Port Demux module 66 and are then sent to digital to analog converters in ports 24, 26 before being sent to two separate physical channels 68, 70.
In further embodiments, there could be other system specific functional blocks, such as Peak to Average Ratio reducers, between IFFT output port and DACs.
Because only one IFFT engine 52 is required to process two separate signals to be transmitted as opposed to two IFFT engines in the prior art, the per-channel die size of IFFT engine implementation in a SoC is cut by half.
Let {x(k)} be a 2N×1 real vector of such a batch of the digital signal from channel 1 and {x2(k)} be another 2N×1 real vector of such a batch of the digital signal from channel 2. In the prior art {x(k)} and {x2(k)} were fed to two separate FFT engines as shown in
{X1(n)}=FFT{x1(k)} (Equation 13)
{X2(n)}=FFT{x2(k)}. (Equation 14)
The first halves of {X1(n)} and {X2(n)} were sent to QAM demappers in ports 46, 48 to de-modulate and restore the data streams transmitted from two independent sources. If the channel size is to be increased, the die size must also be increased accordingly.
In accordance with the principles of the invention {x1(k)} and {x2(k)} are combined to create a 2N×1 complex vector {x(k)}:
{x(k)}={x1(k)}+j{x2(k)} (Equation 15)
in the Rx Port Mux module 81 as shown in
{X(n)}=FFT{x(k)} (Equation 16)
From {X(n)}, two N×1 vectors {X′1(n)} and {X′2(n)} are created with their elements being
Equations 17 and 18 are the mathematical functions performed in the Rx Port Demux module 92. {X′(n)} and {X′2(n)} are sent to QAM demappers in ports 46, 48 to de-modulate and restore the data streams transmitted from two independent sources.
The real and imaginary outputs from FFT 82 and RAM 104 are also applied to adders 114, 116 whose outputs are applied to RAM 118, which supplies the data stream to port 48 through divider 120.
The analog signals from two separate channels 41, 43 are converted to digital signals by the Analog to Digital Converters (ADC) in ports 42, 44. The digital signals are then divided into batches of 2N=2M+1 in length.
It will be seen that in the above embodiment only one FFT engine is required to de-modulate signals from two separate channels.
Numerous modifications may be made without departing from the spirit and scope of the invention as defined in the appended claims.
This application claims the benefit under 35 USC 119(e) of prior U.S. provisional application Ser. No. 60/515,658 filed on Oct. 31, 2003, the contents of which are herein incorporated by reference.
Number | Date | Country | |
---|---|---|---|
60515658 | Oct 2003 | US |