A number of spread spectrum wireless communication techniques have been developed. For example, one common spread spectrum technique used in wireless communication is code division multiple access (CDMA) signal modulation. In CDMA signal modulation, multiple communications can be simultaneously transmitted by several sending devices over a common spread spectrum radio-frequency (RF) channel. Different receiving devices can extract the different signals from the spread spectrum RF channel using CDMA codes.
For CDMA signal modulation, each sending device utilizes unique orthogonal codes to spread each of the bits of information into a stream of binary units referred to as “chips.” The chips are typically converted to an analog baseband signal, which can then be wirelessly transmitted, e.g., by modulation of the baseband signal on a carrier waveform and possibly upconversion to a transmit frequency. In conventional CDMA spreading techniques, the chips are typically generated using orthogonal “Walsh codes,” and pseudo-noise (PN) codes. Other spreading techniques may use orthogonal variable spreading factor (OVSF) codes to facilitate the spreading of bits into chips.
The receive device receives the carrier waveform, which includes the transmitted chips, but also includes channel noise, e.g., from other transmitting devices or non-CDMA transmitters. The receive device downconverts the the received signal to a baseband frequency, extracts the baseband signal from the carrier waveform and converts the baseband signal to digital samples that represent the chips. The receive device then uses the known codes to extract the information bits from the chips. For example, the receive device may implement despreading and decovering techniques in order to despread the chips into the bits that comprise the encoded information. Demodulation techniques are then used to extract encoded information from the bits.
In order to deal with multi-path phenomena, CDMA receiver architecture commonly implements what is referred to as a “RAKE” receiver. A RAKE receiver can be viewed as a receiver that includes a plurality of “fingers” that extract the same signal at a number of different time delays. The transmitted signal, for example, may follow multiple paths to the receive device, and the different paths can introduce different time delays. Moreover, the different paths of a multi-path signal create noise relative to the other paths of the multi-path signal. By defining RAKE fingers at different time delays, a RAKE receiver can extract multiple instances of the same signal and select the strongest path for demodulation, or combine multiple paths to define a signal for demodulation.
In order to deal with multi-path noise and other system noise, equalization techniques have been developed. An equalizer is typically implemented at the receive device in order to filter system noise from a received signal. The equalizer is essentially a variable and adaptive filter that filters received signals in order to remove undesirable channel noise. The filtering that occurs at the equalizer typically changes over time, as channel noise changes. In addition, equalizers may play an integral role in the demodulation of received signals.
One type of equalization design that has been used for CDMA communication is a zero forcing equalizer. A zero forcing equalizer inverts the expected channel noise to remove the channel response associated with the sending device. In particular, a zero forcing equalizer may define adaptive filtering according to:
1/(the frequency response of the channel).
This approach can adequately account for noise and interference that result from the multi-path phenomenon, but does not adequately account for system noise from other devices (such as base stations) that communicate over the same channel. For this reason, zero forcing equalization techniques can be ineffective, particularly when the channel has very low gain. In such cases, system noise from other base stations can actually be amplified by the zero forcing equalizer, which is highly undesirable.
Another type of equalizer that has been used in CDMA receivers is referred to as a minimum mean square error (MMSE) equalizer. Like zero forcing equalizers, an MMSE equalizer inverts the channel to remove the channel response associated with the sending base station. However, unlike zero forcing equalizers, an MMSE equalizer also takes channel variance into account, in order to reduce or avoid undesirable amplification of the noise from other sources that communicate over the wireless channel.
MMSE equalizers typically estimate a channel impulse response and estimate a channel variance. MMSE equalizers then choose filter coefficients (filter taps) for equalization based on the estimated channel impulse response and channel variance. Conventional MMSE equalizers typically presume that filter coefficients are integer multiples of the time delays of the RAKE receiver. The time delays are defined in chip intervals, and thus, the filter coefficients in conventional MMSE equalizers are defined in integer numbers of chips.
In general, this disclosure describes equalization techniques for spread spectrum wireless communication. The techniques may involve estimating a channel impulse response, estimating channel variance, and selecting filter coefficients for an equalizer based on the estimated channel impulse response and the estimated channel variance. In accordance with this disclosure, the channel variance estimation involves estimation of two or more co-variances for different received samples.
Notably, the equalizer is “fractionally spaced,” which means that the equalizer defines fractional filtering coefficients (filter taps), unlike conventional equalizers that presume that filtering coefficients are defined at integer chip spacing. The techniques can also allow the equalizer to account for antenna diversity, such as receive diversity, transmit diversity, or possibly both.
In one embodiment, this disclosure describes a method of equalization in a spread spectrum wireless communication system comprising estimating a channel impulse response, estimating channel variance by computing two or more co-variances for different received samples, and selecting filter coefficients for an equalizer based on the estimated channel impulse response and the estimated channel variance.
In another embodiment, this disclosure describes a method of equalization for spread spectrum wireless communication comprising selecting filtering coefficients for two or more equalization filters based on an estimated channel impulse response and an estimated channel variance, and combining output of the two or more equalization filters based on based on antenna diversity.
In another embodiment, this disclosure describes a spread spectrum wireless communication device comprising a receiver that receives a wireless signal, and an equalizer that estimates a channel impulse response, estimate channel variance by computing two or more co-variances for different received samples of the signal, and selects filter coefficients for the equalizer based on the estimated channel impulse response and the estimated channel variance.
In another embodiment, this disclosure describes a method of equalization for spread spectrum wireless communication comprising selecting filtering coefficients for two or more equalization filters based on an estimated channel impulse response and an estimated channel variance, and combining output of the two or more equalization filters based on antenna diversity.
The techniques described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the techniques may be embodied in a computer readable medium comprising program code that when executed in a spread spectrum wireless communication device cause the device to perform equalization according to one or more of the techniques described herein.
Additional details of these and other embodiments are set forth in the accompanying drawings and the description below. Other features, objects and advantages will become apparent from the description and drawings, and from the claims.
In general, this disclosure describes equalization techniques for spread spectrum wireless communication. The described equalization techniques can improve equalization filtering relative to conventional minimum mean square error (MMSE) equalization techniques. The techniques involve estimating a channel impulse response, estimating channel variance and selecting filter coefficients for an equalizer based on the estimated channel impulse response and the estimated channel variance.
In accordance with the teaching of this disclosure, the equalizer is “fractionally spaced,” which means that the equalizer defines fractional filtering coefficients (filter taps). Such a fractionally spaced equalizer contrasts with conventional equalizers that presume that filter coefficients are integer multiples of the time delays of a multi-path signal. In particular, conventional MMSE equalization techniques define filter coefficients with spacing that corresponds to an integer number of chips.
In order to compute channel variance for fractionally spaced equalization, two or more co-variances may be needed from different received samples. For example, co-variances can be determined for odd and even samples of the received signal. Filter coefficients for the equalizer can then be defined based on the estimated channel impulse response and the co-variances determined for the odd and even samples.
The techniques described herein can allow the equalizer to account for antenna diversity, such as receive diversity, transmit diversity, or possibly both. Antenna diversity refers to wireless communication in which the transmitting or receiving device implements multiple antennas for the transmission or reception of wireless signals. Transmit diversity involves signal transmission from multiple transmit antennas. Receive diversity involves reception of signals using multiple receive antennas.
For example, as outlined below, equalizer 16 is fractionally spaced. Thus, equalizer 16 defines fractional filtering coefficients (filter taps). Equalizer 16 may determine two or more co-variances from different received samples in order to compute channel variance. The co-variances can be determined for odd and even samples of the received signal. Filter coefficients for equalizer 16 can then be defined based on the estimated channel impulse response and the co-variances determined for the odd and even samples.
As shown in
Receive device 24 includes various RF processing components such as an adder 35 and a receive filter 36. The illustrated input to the adder “N(0,sigma2)” represents noise with mean zero and variance sigma squared. An equalizer 38 has programmable taps that are capable of handling inputs at factional chip values. Receive device 24 also includes a de-shaper 37 that generally represents the units or components that perform down conversion to remove the baseband chips from a carrier waveform according to the spectrum wireless communication standard. It should be noted that digital-to-analog conversion at sending device 22 and analog-to-digital conversion at receive device 24 is not shown in
The notation in
The following Table 1 outlines various symbols used in this disclosure, and the corresponding description of such symbols
Referring again to
and may be generally given by the following equation:
It is desirable to identify the MMSE that achieves linear representation of a transmitted chip x(tTc), where t is an integer, based on a finite number of symbols of the received y stream. This results in the following equation:
The end points of filtering may be time instances aTc/M and bTc/M with both ends included. For a filter spanning L taps, the quantities a and b could be, e.g., a=−L/2+1 and b=L/2. The quantity c(kTc/M) constitutes the equalizer filter coefficients.
One goal, according to this disclosure, is to minimize the mean square error represented by:
E[|z(tTc)−x(tTc)|2]
In performing this minimization, chip-spaced outputs of the equalizer are very important, and hence the target time instances tTc are also very important, wherein t is an integer.
The error given by:
[z(tTc)−x(tTc)]
should be orthogonal to the observations that generate the estimate. In other words, for a fixed
This expectation applies with respect to the statistics of all components of the input (contributing towards IOR), the statistics of the scrambling sequence, and the statistics of the noise. IOR represents the total base station power. The above set of equations can be rewritten for a fixed
The cross correlation term can be determined using Equation 1, as follows:
In the above chain of equalities that yield Equation 5, the first equality follows by using Equation 1 with k replaced by tM−j. The second equality follows because the transmitted symbol x(tTc) is independent of the noise sequence w, and uncorrelated with x(nTc) when n is not equal to t, because the scrambling sequence is an i.i.d. (independent and identically distributed) sequence with zero mean. The third equality follows because the transmitted symbol x(tTc) comprises independent zero-mean data on the different orthogonal variable spreading factor (OVSF) codes. Moreover,
E[|x(0)|2]=1.
The auto-correlation term can be evaluated as follows:
The above series of equations, which lead to Equation 6, can be obtained as follows. The first equality follows by substitution of Equation 1 with k replaced by tM−k in the first y term and by tM−j in the second y* term. The second equation follows because the signal x(nTc) at the input of the pulse-shaping filter is independent of the noise added by the channel. The first term in the third equation follows because the scrambling sequence is i.i.d. with mean 0 and therefore:
E[x(nTc)·x*(mTc)]=δ(n−m),
i.e., the x(nTc) is uncorrelated with unit energy. The double summation (over n and m) therefore becomes a single summation (over m). The second term follows because this is the result of white noise filtered by the receiver root-raised-cosign waveform. The last equation is obtained by setting l=t−m and by observing that when 1 runs through the integers, so does m.
Square matrices A and R (of (b−a+1)2 elements) can be defined as:
The orthogonality conditions in Equation 4 can then be expressed as:
This is equivalently represented in matrix form as:
To see that Equation 10 makes intuitive sense, one can consider the special case where noise is dominant, i.e., R+A≅σ2I, when M−1 (for a chip-spaced equalizer). In this case, it is clear that c is proportional to h*(−n), i.e., the rake filter that matches the channel impulse response. It should be noted that vector c is written just as a filter would be written, but the vector on the right side of Equation 10 containing h is written in time-reversed order.
Several key observations can be made with respect to Equation 10. First, A and R are Hermitian matrices. These are easy to verify from Equation 7 and Equation 8, respectively, and the property that the r sequence is symmetric and real.
Second, A is generally not a Toeplitz matrix. To see this, simply let M=2, and consider A(0,0) and A(1,1). These are given by:
The first quantity is the energy of ontime components of the composite channel response (where the composite channel is the transmitted, the channel and the receiver filter taken together). The second quantity is the energy of the early components of the composite channel response. These two elements are not necessarily the same. The key fact that results in the non-Toeplitz nature of A is the non-stationary (more precisely, non-wide-sense-stationary) nature of the chip×M input sequence going into the pulse-shaping filter. So, each of the M phases of the input to the equalizer filter have different statistics.
A(j,k) can be simplified as follows for the case where M=2. For
kε2,
the quantity A0(j−k) can be defined as:
Similarly for
kε2+1,
the quantity A1(j−k) can be defined as:
The quantity A0(j−k) represents sample correlations (j−k) Tc/2 seconds apart, with a starting address corresponding to an ontime sample. The quantity A1(j−k) represents sample correlations (j−k)Tc/2 seconds apart, but with a starting address corresponding to an early sample.
If a is assumed to be an odd integer and b is assumed to be an even integer, the matrix A specializes to the following form:
The diagonal elements of the matrix above alternate for the case M=2. In general, the diagonal elements repeat with a periodicity of M. Because the matrix is no longer Toeplitz, care must be taken when employing frequency-domain equalization. To do this, the matrix can be broken into four smaller Toeplitz matrices and the four smaller Toeplitz matrices can be used to perform the frequency-domain equalization.
As described in S. U. H Qureshi, “Adaptive Equalization,” Proceedings of the IEEE, vol. 73, no. 9, pp. 1349-1387, September, 1985, in a system with excess bandwidth less than 1, (notably the pulse widths in the WCDMA system have an excess bandwidth of 0.22), the correlation matrix corresponding to a finite number of equalizer taps is nonsingular, even when noise is absent. The least means squared (LMS) algorithm will therefore converge to a unique solution even in high geometry conditions.
Referring again to
are different. The first quantity corresponds to an ontime starting address, and the second to an early time starting address. Therefore, it is highly desirable for equalizer 16 to be capable of returning estimates of the following quantities:
A0(j)+R(j) and A1(j)+R(j), for j=0,1, . . . , b−a.
These are estimated (with the caret symbol denoting an estimated value instead of the true value) as follows:
As can be observed in these equations directly above, the starting addresses are offset by one half-chip for the two estimates. Moreover, the accumulation over s is at chip spacing. Finally, the accumulation length is a parameter that can be programmably set. It may be convenient to set this accumulation length, for example, to be a multiple of 256. This can also provide for improved estimates of the diagonal elements of the matrix A+R.
The quantity 2*(b−a+1) describes the correlation matrix of the input into the equalizer. In particular, this quantity describes the lower-triangular portion of the A+R matrix. The upper triangular portion of the matrix can be automatically determined because both A and R are Hermitian matrices.
In one implementation, the functionality of equalizer 16 is implemented in software and hardware. The software may execute on a digital signal processor (DSP) (not illustrated in
(Â0(j)+{circumflex over (R)}(j)),
and accumulation for starting address tTc−Tc/2 for the second subset of correlations giving:
(Â1(j)+{circumflex over (R)}(j)).
For an alternative second implementation of equalizer 16, software executing on the DSP may trigger correlation twice, by programming staring address tTc for the first time and starting address tTc−Tc/2 for the second time. Hardware in equalizer 16 may return either
(Â0(j)+{circumflex over (R)}(j))
or
(Â1(j)+{circumflex over (R)}(j))
depending on whether the programmed starting address corresponds to an “ontime” or “early” sample. In this case, the DSP programs two tasks to get the same information obtained in the first implementation described above. In either case, hardware could also be used to estimate the channel impulse response according to conventional channel impulse response estimation techniques.
Software executing on a DSP could also make use of the correlation estimates by accounting for the fact that the correlation matrix is not Toeplitz, but can be divided into four Toeplitz sub-matrices. Toeplitz sub-matrices can then be exploited in order to implement frequency-domain equalization, if desired.
As mentioned above, the equalization techniques described herein are capable of handing antenna diversity. Again, antenna diversity refers to wireless communication in which the transmit or receiving device implements multiple antennas for the transmission or reception of wireless signals. Transmit diversity involves signal transmission from multiple transmit antennas. Receive diversity involves reception of signals using multiple receive antennas.
For transmit diversity, suppose that the pilot and data channels are code division multiplexed (as in a WCDMA system). The pilot patterns on two different antennas can allow a searcher to identify the channel's impulse response on the path from the transmitter to the receiver. In particular, the pattern on the common pilot channel (CPICH) may be as follows:
Each symbol (1 or −1) represented above is a 256 chip symbol, which is multiplied by (1+j) to yield a complex symbol (which is scrambled later). There may be 150 symbols in a frame. Notably, the periodicity may be 4 within the 150 symbols and 150 MOD 4=2. Therefore, the last pattern may not be completed and the above pattern may reset at a start of a frame.
In closed-loop transmitter diversity, the data on a second antenna (Ant1) may have a constant phase offset relative to data on a first antenna (Ant0). This phase offset may change at a rate of once per slot. The following expression
xa(kTc/M), a=0, 1,
is denoted as the combined transmissions from the two different antennas. Then, let
ha(kTc/M)
represent the channel response from transmitter antenna a to the receiver (assumed as being a single antenna receiver in this example). The received signal is then given by:
The phase offset of the data signals on the two transmitter antennas can be set so as to align the data so that, at the receiver, the data signals reinforce one another. Thus, having one equalizer configured to produce:
x0(kTc/M)
and another configured to produce:
x1(kTc/M),
in the MMSE sense, is not the right criterion. This is because, in performing the equalization, information indicating that there is a phase offset between the channels is lost, and the data needs to be realigned to compensate for this.
Let d(kTc/M) represent the half-chip data component transmitted over a 0th antenna, and let (w1)d(kTc/M) represent the half-chip data component transmitted over a 1st antenna. In this case, the goal is to minimize:
E[|z(tTc)−d(tTc)|2],
at chip instances, where z(tTc) is given by Equation 2 with c being replaced by cd, where the subscript d represents a filter that configured to produce the actual data in an MMSE sense. The orthogonality principle of Equation 3 may require evaluation of a cross-term in a manner analogous to Equation 5. This is given as follows:
In the above chain of equalities, the first equality follows by using Equation 11 with k replaced by tM−j. The second equality follows because the transmitted symbol d(tTc) is independent of the noise sequence w, and uncorrelated with xa(nTc) when n is not equal to t, a=0, 1, because the scrambling sequence is an i.i.d sequence with zero mean. The third equality follows because the transmitted symbol d(tTc) comprises independent zero-mean data on the different OVSF codes. Moreover, the weights of this data on the two antennas are 1 and w1.
The autocovariance matrix can be denoted as A+R, just as outlined above. The manner in which A and R depend on h0 and h1 will be different, but this is not of consequence because, one can estimate the autocovariance and use this estimated matrix to get the equalizer filter.
The final matrix equation to solve is:
It should be emphasized that the A matrix in Equation 12 may be different from the A matrix in Equation 10.
At this point, it is desirable to equalize the pilot chip at time t, i.e., p(tTc). This is needed to compensate for any receiver induced phase artifacts, and is executed after equalization. Techniques similar to those outlined above can be used to minimize
E[|zp(tTc)−p(tTc)|2],
where zp is the equalized pilot sequence. The following equation, analogous to Equation 12 is obtained:
where wp,i is the pilot weight on antenna 1 with respect to antenna 0, for the chip of interest t. This is either 1 or −1 depending on the 256 chip phase within the 10 millisecond frame. According to this weight, the equalizer filter is represented by cp,i, where I=0 or 1, is used, wherein c represents the equalization filter weight (tap), p stands for pilot and i stands for the transmit antenna number.
Notably, the data and pilot equalization can be simultaneously achieved using two sets of equalizer component filters ci that satisfy the following equation for i=0,1
The following equations provide the data and pilot equalizer coefficients from the component filters c0 and c1:
cd=E[|d(0)|2][c0+w1*c1],
and
cp,i=E[|p(0)|2][c0+wp,1*c1],
where wp,i is 1 or −1.
In order to achieve outputs for both pilot and data equalizer filters, equalizer 16 (
E[|d(0)|2]
should already be included. Analogously, the pilot will be put together based on the pilot weight for the symbol within frame. The dot-cross block after the equalization will have an extra traffic to pilot energy scale. In particular, instead of
E[|p(0)|2]
the dot-cross block after the equalization has a scale of
E[|d(0)|2]),
which can be compensated for in the scaling before sending signals to a demodulator backend.
Wireless communication device 50 can be characterized as having a front end 51 and a back end 61. Front end 51 includes RF analog processing components 54 to perform any necessary or desirable analog processing of the received signal. Front end 51 also includes an analog-to-digital converter 56 to convert a received signal to digital samples.
Equalizer 60 implements one or more of the equalization techniques described herein. In particular, equalizer 60 may be configured to estimate a channel impulse response, estimate channel variance by computing two or more co-variances for different received samples, and select filter coefficients for the equalizer based on the estimated channel impulse response and the estimated channel variance. Equalizer 60 may be fractionally spaced having filter taps spaced one-half chip apart.
Back end 61 includes various components that can be used to process symbols generated by front end 51. In one example, back end 61 includes a de-interleaver to remove any interleaving applied to the data, a de-rate matching unit to perform de-rate matching, and a de-coder to decode the data. For quadrature amplified modulation, loss likelihood ratio (LLR) extraction may be performed by back end 61 prior to de-interleaving. In any case, a digital signal processor (DSP) may be used to implement back end 61 techniques according to spread spectrum demodulation. In some embodiments, a DSP implemented in back end 61 may be invoked by equalizer 60 in order to execute various aspects of the equalization.
Sample server 72 generally represents a portion of memory that stores samples after analog-to-digital conversion. Rotator 73 cancels frequency error in the received samples and forwards them to dot-cross 74. Dot cross 74 and summation unit 75 may be collectively viewed as the filter of equalizer 70.
Dot cross 74 performs a dot-cross operation, wherein
Dot-cross(x,y)=ComplexMultiply(x,conj(y))
Complex Multiply(x1+j×Q)(y1+jyQ)
For convenience in hardware, symmetric saturation may be used, i.e., the range may always be [−(2^(K−1)−1), (2^(K−1)−1], wherein K represents the number of bits used after saturation. As shown in
Referring again to
As can be appreciated from
For no diversity, as shown in
For transmit diversity, as shown in
The cpichDMA, cpich256, cpichPri512 and cpichDiv512 respectively refer to different CPICH signals that can be generated by unit 120. The different CPICH signals may be used for different antenna diversity scenarios as outlined in greater detail below. The cpichDMA is generated in all modes and sent to the demodulator, e.g., demodulator 65 (
As shown in
In order to generate cpich256, the output of accumulator 124 is rotated 45 degrees by rotator 126. The output of rotator 126 is then rounded by rounding unit 128 to remove 4-bits and saturated to 10-bits by saturation unit 130. The 10-bit output of saturation unit 130 is cpich256. Again, however, the bit lengths at various stages of the generation of CPICH signals could be different for other implementations.
The cpichPri512 and cpichDiv512 signals are used of a transmit diversity state, as described in greater detail below. In order to generate cpichPri512, the output of rotator 126 is sent to butterfly add unit 132, which adds a pair of consecutive CPICH signals in order to cancel out the part of the signal associated with a second transmit antenna, thereby preserving only the part of the signal associated with a first transmit antenna. The output of butterfly add unit 132 is then rounded by rounding unit 134 to remove 5-bits and saturated to 10-bits by saturation unit 136. The 10-bit output of saturation unit 136 is cpichPri512.
In order to generate cpichDiv512, the output of rotator 126 is sent to butterfly subtract unit 138, which subtracts a pair of consecutive CPICH signals in order to cancel out the part of the signal associated with a first transmit antenna, thereby preserving only the part of the signal associated with a second transmit antenna. The output of butterfly subtract unit 138 is then rounded by rounding unit 140 to remove 5-bits and saturated to 10-bits by saturation unit 142. The 10-bit output of saturation unit 142 is cpichDiv512.
As shown in
As shown in
As shown in
The input to
The outputs of multipliers 162 and 166 are summed together using adder 168. The output of adder 168 is then fed to programmable rounding unit 170, which in this example, is programmable in a range of [8,9] to round off 8-bits or 9-bits. The output of unit 170 is then saturated to 10-bits by saturation unit 172. The output of saturation unit 172 comprises a CPICH signal for closed loop transmit diversity, i.e., cpichCLTD.
As shown, FHT16 (182) includes an OVSF despreading unit 184, an accumulator 186 that accumulates over 16 cycles, a rounding unit 188 that rounds off 1-bit, and a saturation unit 190 that saturates to 9-bits. The output of FHT16 (182) is data16, which represents a single modulation symbol on an high speed physical data shared channel (HS-PDSCH) channel. The “dot-cross” operation is typically performed on such data in order to cancel random phase variations introduced by the channel.
The output of FHT16 (182) is provided to multiplier 200, which multiplies the output of FHT16 (182) by the conjugate of cpich256. The output of multiplier 200 is rounded to remove 7-bits by rounding unit 202 and saturated to 9-bits by saturation unit 204. The output of saturation unit 204 is a symbol for no diversity, which is stored in symbol buffer 206. Any symbols stored in symbol buffer 206 can be forwarded to a back end (such as back end 61 as shown in
As shown in
Multiplier 226 multiples the output of saturation unit 224 by the conjugate of cpichCLTD. The output of multiplier 226 is rounded by rounding unit 228 to remove 7-bit and saturated to 9-bits by saturation unit 229. The output of saturation unit 229 is then stored in symbol buffer 220 as the symbol for 2-run closed loop transmit diversity (CLTD). It can be noted that the output of FHT16 (182A) for the input from equalizer combiner RAM 0 (104) is replaced by the output of unit 229 in symbol buffer 220. Any symbols stored in symbol buffer 220, then, can be forwarded to a back end (such as back end 61 as shown in
The output of FHT16 (182A) is fed to multiplier 230, which multiplies the output of FHT16 (182A) by the conjugate of cpichPri512Tx0. The output of multiplier 230 is rounded by rounding unit 232 to remove 7-bits and saturated to 9-bits by saturation unit 234. The output of saturation unit 234 is initially stored in symbol buffer 220.
The output of FHT16 (182B) is fed to multiplier 238, which multiplies the output of FHT16 (182A) by the conjugate of cpichDiv512Tx1. The output of multiplier 238 is rounded by rounding unit 240 to remove 7-bits and saturated to 9-bits by saturation unit 242. Conjugation (Conj) unit 244 generates the conjugate of the output of saturation unit 242, which generally involves negating the imaginary part of a complex number. The initially stored data in symbol buffer 236 (from saturation unit 234) is then combined with the output of conj unit 244 by adder/subtractor 246. The output of adder/subtractor 246 is then saturated to 9-bits by saturation unit 248 before being stored in symbol buffer 236 as the symbol for space time transmit diversity. The function of adder/subtractor 246 (i.e., addition or subtraction) is based on the real or imaginary nature of the input. Real components are subtracted, whereas imaginary components are added. This amounts to the architecture of
The output of FHT16 (182) is provided to multiplier 260, which multiplies the output of FHT16 (182) by the conjugate of cpichCLTD. The output of multiplier 260 is rounded to remove 7-bits by rounding unit 262 and saturated to 9-bits by saturation unit 264. The output of saturation unit 264 is a symbol for 1-run closed loop transmit diversity and is stored in symbol buffer 266. The symbols that get stored in symbol buffer 266 can be forwarded to a back end (such as back end 61 as shown in
In addition, for transmit antenna 1, equalizer combiner RAM 1 (108) provides input to FHT16 (182B), which performs the extraction of data bits. The output of FHT16 (182B) is provided to multiplier 362, which multiplies the output of FHT16 (182B) by the conjugate of cpichDiv512Txt. The output of multiplier 362 is rounded to remove 7-bits by rounding unit 364 and saturated to 9-bits by saturation unit 366. Conj unit 368 generates the conjugate of the output of saturation unit 366, which generally involves negating the imaginary part of a complex number. The output of conj unit 368 is accumulated for 8-cyclees using adder/subtractor 369, wherein the addition or subtraction depends on the HS-SCCH OFSF code numbers for a given symbol. The final result of this accumulation comprises the HS-SCCH control symbol for transmit antenna 1 and is stored in shared control channel (SCCH) register 360 for the scenario of space time transmit diversity (STTD).
The output of multiplier 396 is rounded to remove 4-bits by rounding unit 398 and saturated to 5-bits by saturation unit 400. The output of saturation unit 400 comprises an HS-SCCH symbols, which is provided to HS-SCCH controller 406. HS-SCCH controller 406 is the same as a register in the sense that it is simply a unique memory location for storing HS-SCCH symbols. In any case, the symbols stored in HS-SCCH controller 406 can be forwarded to a back end (such as back end 61 as shown in
Multiplier 470 multiplies the output of FHT16 (182A) by the conjugate of cpichPri512Tx0. The output of multiplier 470 is rounded by rounding unit 472 to remove 7-bits and saturated to 9-bits by saturation unit 474. The output of saturation unit 474 is initially stored in symbol buffer 476.
The output of FHT16 (182B) is fed to multiplier 478, which multiplies the output of FHT16 (182A) by the conjugate of cpichDiv512Tx0. The output of multiplier 478 is rounded by rounding unit 480 to remove 7-bits and saturated to 9-bits by saturation unit 482. Conj unit 484 generates the conjugate of the output of saturation unit 482, which generally involves negating the imaginary part of a complex number. The initially stored data in symbol buffer 476 (from saturation unit 474) is then combined with the output of conj unit 484 by adder/subtractor 486. The output of adder/subtractor 246 is then saturated to 9-bits by saturation unit 488 before being stored in symbol buffer 476 as the symbol for the scenario of receive diversity and space time transmit diversity. The function of adder/subtractor 488 (i.e., addition or subtraction) is based on the real or imaginary nature of the input. Real components are subtracted, whereas imaginary components are added. This amounts to the architecture of
A number of equalization techniques have been described. The described equalization techniques utilize a fractionally spaced equalizer architecture capable of handing different antenna diversity scenarios. The described equalizer may be implemented hardware, software, firmware, or any combinations thereof. If the equalizer is implemented in software, the processor that executes the software may take the form of a microprocessor or digital signal processor (DSP) and can be integrated with or form part of a wireless communication device or a base station. Memory can store the software and may take the form of random access memory (RAM) storing program code that is accessed and executed by a processor to carry out the various techniques described above.
Exemplary hardware implementations may include implementations within a DSP, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a programmable logic device, specifically designed hardware components, or any combination thereof.
Nevertheless, various other modifications may be made without departing from the spirit and scope of the invention. For example, other types of components could be used to implement the techniques described herein. In addition, although exemplary bit lengths have been given for the various examples described above, other bit lengths could be used for other implementations. Accordingly, these and other embodiments are within the scope of the following claims.
The present Application for Patent claims priority to Provisional Application No. 60/717,785 entitled FRACTIONALLY-SPACED EQUALIZERS FOR SPREAD SPECTRUM WIRELESS COMMUNICATION, filed on Sep. 15, 2005, assigned to the assignee hereof, and hereby expressly incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5598428 | Sato | Jan 1997 | A |
5852630 | Langberg et al. | Dec 1998 | A |
6175588 | Visotsky et al. | Jan 2001 | B1 |
6775260 | Dabak et al. | Aug 2004 | B1 |
6816542 | Komatsu | Nov 2004 | B1 |
6956893 | Frank et al. | Oct 2005 | B2 |
7324583 | Hooli et al. | Jan 2008 | B2 |
7483480 | Guo et al. | Jan 2009 | B2 |
20030035469 | Frank et al. | Feb 2003 | A1 |
20040032848 | Papasakellariou | Feb 2004 | A1 |
20040136444 | Massicotte et al. | Jul 2004 | A1 |
20050180493 | Hooli et al. | Aug 2005 | A1 |
20050195886 | Lampinen et al. | Sep 2005 | A1 |
20060109897 | Guo et al. | May 2006 | A1 |
Number | Date | Country |
---|---|---|
7170243 | Jul 1995 | JP |
11266232 | Sep 1999 | JP |
2000315966 | Nov 2000 | JP |
2001016136 | Jan 2001 | JP |
2004501541 | Jan 2004 | JP |
2008505577 | Feb 2008 | JP |
WO2004064298 | Jul 2004 | WO |
WO2005004338 | Jan 2005 | WO |
WO2005081482 | Sep 2005 | WO |
Number | Date | Country | |
---|---|---|---|
20070127557 A1 | Jun 2007 | US |
Number | Date | Country | |
---|---|---|---|
60717785 | Sep 2005 | US |