# Patent

## Title
Segment-wise channel equalization based data estimation

## Abstract

Data is estimated of a plurality of received spread spectrum signals. The plurality of received communications are received in a shared spectrum. The received communications are sampled to produce a received vector. The received vector is processed to produce a plurality of segments. Each segment is processed separately to estimate data of the received communications.

## Background
CROSS REFERENCE TO RELATED APPLICATION(S)
This application is a continuation of U.S. patent application Ser. No. 10/153,112, filed May 22, 2002, which is incorporated by reference as if fully set forth.


BACKGROUND
The invention generally relates to wireless communication systems. In particular, the invention relates to data detection in a wireless communication system.
FIG. 1 is an illustration of a wireless communication system 10. The communication system 10 has base stations 121 to 125 (12) which communicate with user equipments (UEs) 141 to 143 (14). Each base station 12 has an associated operational area, where it communicates with UEs 14 in its operational area.
In some communication systems, such as code division multiple access (CDMA) and time division duplex using code division multiple access (TDD/CDMA), multiple communications are sent over the same frequency spectrum. These communications are differentiated by their channelization codes. To more efficiently use the frequency spectrum, TDD/CDMA communication systems use repeating frames divided into time slots for communication. A communication sent in such a system will have one or multiple associated codes and time slots assigned to it. The use of one code in one time slot is referred to as a resource unit.
Since multiple communications may be sent in the same frequency spectrum and at the same time, a receiver in such a system must distinguish between the multiple communications. One approach to detecting such signals is joint detection. In joint detection, signals associated with all the UEs 14, users, are detected simultaneously. Approaches for joint detection include zero forcing block linear equalizers (ZF-BLE) and minimum mean square error (MMSE) BLE. The methods to realize ZF-BLE or MMSE-BLE include Cholesky decomposition based and fast Fourier transform (FFT) based approaches. These approaches have a high complexity. The high complexity leads to increased power consumption, which at the UE 14 results in reduced battery life. Accordingly, it is desirable to have alternate approaches to detecting received data.
SUMMARY
Data is estimated of a plurality of received spread spectrum signals. The plurality of received communications are received in a shared spectrum. The received communications are sampled to produce a received vector. The received vector is processed to produce a plurality of segments. Each segment is processed separately to estimate data of the received communications.



BRIEF DESCRIPTION OF THE DRAWING(S)
FIG. 1 is an illustration of a wireless spread spectrum communication system.
FIG. 2 is an illustration of a transmitter and a segment-wise channel equalization data detection receiver.
FIG. 3 is an illustration of a communication burst and segmentation of data fields of the communication burst.
FIG. 4 is a flow chart of a segment-wise channel equalization data detection receiver.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)
FIG. 2 illustrates a simplified transmitter 26 and receiver 28 using a segment-wise channel equalization based data estimation in a TDD/CDMA communication system, although segment-wise channel equalization is applicable to other systems, such as frequency division duplex (FDD) CDMA or other hybrid time division multiple access (TDMA)/CDMA systems. In a typical system, a transmitter 26 is in each UE 14 and multiple transmitting circuits 26 sending multiple communications are in each base station 12. The segment-wise channel equalization receiver 28 may be at a base station 12, UEs 14 or both.
The transmitter 26 sends data over a wireless radio channel 30. A data generator 32 in the transmitter 26 generates data to be communicated to the receiver 28. A modulation and spreading device 34 spreads the data and makes the spread reference data time-multiplexed with a midamble training sequence in the appropriate assigned time slot and codes for spreading the data, producing a communication burst or bursts.
A typical communication burst 16 has a midamble 20, a guard period 18 and two data fields 22, 24, as shown in FIG. 3. The midamble 20 separates the two data fields 22, 24 and the guard period 18 separates the communication bursts to allow for the difference in arrival times of bursts transmitted from different transmitters 26. The two data fields 22, 24 contain the communication burst's data.
The communication burst(s) are modulated by a modulator 36 to radio frequency (RF). An antenna 38 radiates the RF signal through the wireless radio channel 30 to an antenna 40 of the receiver 28. The type of modulation used for the transmitted communication can be any of those known to those skilled in the art, such as quadrature phase shift keying (QPSK) or M-ary quadrature amplitude modulation (QAM).
The antenna 40 of the receiver 28 receives various radio frequency signals. The received signals are demodulated by a demodulator 42 to produce a baseband signal. The baseband signal is sampled by a sampling device 43, such as one or multiple analog to digital converters, at the chip rate or a multiple of the chip rate of the transmitted bursts to produce a received vector, r. The samples are processed, such as by a channel estimation device 44 and a segment-wise channel equalization data detection device 46, in the time slot and with the appropriate codes assigned to the received bursts. The channel estimation device 44 uses the midamble training sequence component in the baseband samples to provide channel information, such as channel impulse responses. The channel impulse responses can be viewed as a matrix, H. The channel information and spreading codes used by the transmitter are used by the segment-wise channel equalization data detection device 46 to estimate the transmitted data of the received communication bursts as soft symbols, d.
Although segment-wise channel equalization is explained using the third generation partnership project (3GPP) universal terrestrial radio access (UTRA) TDD system as the underlying communication system, it is applicable to other systems. That system is a direct sequence wideband CDMA (W-CDMA) system, where the uplink and downlink transmissions are confined to mutually exclusive time slots.
The received communications can be viewed as a signal model per Equation 1.

r=Hs+n  Equation 1

r is the received vector. H is the channel response matrix. n is the noise vector. s is the spread data vector, which is the convolution of the spreading codes, C, and the data vector, d, as per Equation 2.

s=C d  Equation 2

Segment-wise channel equalization divides the received vector, r, into segments and processes each segment separately as shown in FIG. 4, step 50. FIG. 3 also illustrates segmentation of a communication burst and illustrates how each segment represents a continuous portion of the received vector. Each data field of the burst is N chips in length. The data fields are divided into M segments 4811-481M, 4821-482M (48). The following discussion uses a uniform segment length Y for each segment 48, although the segments 48 based on the exact implementation may be of differing lengths. Prior to processing each segment 48, Y1 chips prior to each segment are appended to the segment and Y2 chips after each segment 48 are appended to the segment 48, step 52. In general, the resulting length of each processed segment 48 is Z=Y+Y1+Y2.
For segments 4812-481M-1, 4822-482M-1 not on the ends of the data fields, Y1 and Y2 overlap with other segments 48. Since nothing precedes the first segment 4811 of the first data field 22, Y1 chips prior to that segment are not taken. Segment-wise channel equalization may be performed on the Y+Y2 chips. For implementation purposes, it may be desirable to have each segment 48 of a uniform length. For the first segment 4811, this may be accomplished by padding, such as by zero padding, the beginning of the segment or by extending the chips analyzed at the tail end from Y2 to Y2+Y1. For the last segment 481M of the first data field 22, Y2 is the first Y2 chips of the midamble 20. For the first segment 4821 of the second data field 24, Y1 extends into the midamble 20. For the last segment 482M of the second data field 24, Y2 extends into the guard period 18.
Preferably, both Y1 and Y2 are at least the length of the impulse response W less one chip (W−1). The last chip's impulse response in each segment extends by W−1 chips into the next segment. Conversely, the furthest chip's impulse response prior to a segment that extends into that segment is W−1 chips ahead of the segment. Using W−1 chips prior to the segment allows all the influence of all of the prior chips to be equalized out of the desired segment. Using W−1 chips after the segment allows all the information (impulse response) for each chip of the segment extending into the next segment to be used in the data detection. It may be desirable to have Y1 or Y2 be longer than W−1 to facilitate a specific implementation of segment-wise channel equalization. To illustrate, the length of Y1 and Y2 may be extended so that a convenient length for a prime factor algorithm fast Fourier transform can be utilized. This may also be accomplished by padding, such as by zero padding the extended postions.
Using the M extended segments, Equation 1 is rewritten as Equation 3 for each segment.

ri=Hssi+ni, where i=1, . . . , M  Equation 3

Hs is the channel response matrix corresponding to the segment. If each segment is of equal length, Hs is typically the same for each segment.

Two approaches to solve Equation 3 use an equalization stage followed by a despreading stage. Each received vector segment, ri, is equalized, step 54. One equalization approach uses a minimum mean square error (MMSE) solution. The MMSE solution for each extended segment is per Equation 4.

ŝi=(HsHHs+σ2Is)−1HsHri  Equation 4

σ2 is the noise variance and Is is the identity matrix for the extended matrix. (·)H is the complex conjugate transpose operation or Hermetian operation. Alternately, Equation 4 is written as Equation 5.

ŝi=Rs−1HsHri  Equation 5

Rs is defined per Equation 6.

Rs=HsHHs+σ2Is  Equation 6

Using either Equation 4 or 5, a MMSE equalization of each segment is obtained.

One approach to solve Equation 6 is by a fast Fourier transform (FFT) as per Equations 7 and 8.

Rs=Dz−1ΛDz=(1/P)Dz*ΛDz  Equation 7

Rs−1=Dz−1Λ−1Dz=(1/P)Dz*Λ*Dz  Equation 8

Dz is the Z-point FFT matrix and Λ is the diagonal matrix, which has diagonals that are an FFT of the first column of a circulant approximation of the Rs matrix. The circulant approximation can be performed using any column of the Rs matrix. Preferably, a full column, having the most number of elements, is used.

In the frequency domain, the FFT solution is per Equation 9.




  
    
      
        
          F
          ⁡
          
            (
            
              
                s
                ^
              
              _
            
            )
          
        
        =
        
          
            
              
                ∑
                
                  m
                  =
                  1
                
                M
              
              ⁢
              
                
              
              ⁢
              
                
                  
                    F
                    ⁡
                    
                      (
                      
                        
                          h
                          _
                        
                        m
                      
                      )
                    
                  
                  *
                
                ⊗
                
                  F
                  ⁡
                  
                    (
                    
                      
                        r
                        _
                      
                      m
                    
                    )
                  
                
              
            
            
              F
              ⁡
              
                (
                
                  q
                  _
                
                )
              
            
          
          ⁢
          
            
          
          ⁢
          where
        
      
    
    
      
        Equation
        ⁢
        
          
        
        ⁢
        9
      
    
  
  
    
      
        
          
            F
            ⁢
            
              (
              
                x
                _
              
              )
            
          
          =
          
            
              ∑
              
                n
                =
                0
              
              
                P
                -
                1
              
            
            ⁢
            
              
            
            ⁢
            
              
                x
                ⁡
                
                  (
                  n
                  )
                
              
              ⁢
              
                e
                
                  
                    -
                    j
                  
                  ⁢
                  
                    
                      2
                      ⁢
                      π
                      ⁢
                      
                        
                      
                      ⁢
                      kn
                    
                    N
                  
                
              
            
          
        
        ,
        
          
        
        ⁢
        
          
            where
            ⁢
            
              
            
            ⁢
            k
          
          =
          0
        
        ,
        1
        ,
        ...
        ⁢
        
          
        
        ,
        
          P
          -
          1
        
      
    
    
      
        
      
    
  




{circle around (x)} is the kronecker product. M is the sampling rate. M=1 is chip rate sampling and M=2 is twice the chip rate sampling.

After the Fourier transform of the spread data vector, F(ŝ), is determined, the spread data vector ŝ is determined by taking an inverse Fourier transform. A second approach to solve Equation 6 is by Cholesky or approximate Cholesky decomposition.
Another solution for the equalization stage other than MMSE is a least squares error (LSE) solution. The LSE solution for each extended segment is per Equation 10.

ŝi=(HsHHs)−1HsHri  Equation 10

After equalization, the first Y1 and the last Y2 chips are discarded, step 56. As a result, ŝi becomes {tilde over (s)}i. {tilde over (s)}i is of length Y. To produce the data symbols {tilde over (d)}i, {tilde over (s)}i is despread per Equation 11, step 58.

{tilde over (d)}i=CsH{tilde over (s)}i  Equation 11

Cs is the portion of the channel codes corresponding to that segment.

Alternately, the segments are recombined into an equalized spread data field {tilde over (s)} and the entire spread data field is despread per Equation 12, step 58.

{tilde over (d)}=CH{tilde over (s)}  Equation 12

Although segment-wise channel equalization based data estimation was explained in the context of a typical TDD burst, it can be applied to other spread spectrum systems. To illustrate for a FDD/CDMA system, a FDD/CDMA system receives communications over long time periods. As the receiver 28 receives the FDD/CDMA communications, the receiver 28 divides the samples into segments ŝi and segment-wise channel equalization is applied.
By breaking the received vector, r, into segments prior to processing, the complexity for the data detection is reduced. To illustrate the complexity reduction, a data field of a TDD burst having 1024 chips (N=1024) is used. Four different scenarios using a FFT/MMSE approach to equalization are compared: a first scenario processes the entire data field of length 1024, a second scenario divides the entire data field into two segments of length 512, a third scenario divides the entire data field into four segments of length 256 and a fourth scenario divides the entire data field into eight segments of length 128. For simplicity, no overlap between the segments was assumed for the comparison. In practice due to the overlap, the complexity for the segmented approaches is slightly larger than indicated in the following tables.
Table 1 illustrates the number of complex operations required to perform the data detection using Radix-2 FFTs. The table shows the number of Radix-2 and direct multiple operations required for each scenario.











TABLE 1





Number of






Complex

Two
Three


Operations
One Segment
Segments
Segments
Four Segments







Radix-2
1024
9216
8192
7168


Direct Multiply
1049K
524K
262K
131K









Table 2 compares the percentage of complexity of each scenario using one segment as 100% complexity. The percentage of complexity is show for both Radix-2 and direct multiple operations.











TABLE 2







Two
Three



% Complexity
One Segment
Segments
Segments
Four Segments







Radix-2
100%
90%
80%
70%  


Direct Multiply
100%
50%
25%
12.5%









For chip rate sampling, one F(h), one F(q), two F(r) and two inverse FFTs are performed for each segment. For twice the chip rate sampling, two F(h), one F(q), four F(r) and two inverse FFTs are performed for each segment. Table 3 illustrates the complexity of Radix-2 operations at both the chip rate and twice the chip rate.











TABLE 3





Number of






Complex

Two
Three


Operations
One Segment
Segments
Segments
Four Segments







Radix-2
60K
45K
36K
30K


(Chip Rate)


Radix-2
90K
68K
54K
45K


(Twice Chip


Rate)









Table 4 shows the total complexity as a percentage for the Radix-2 operations for both chip rate and twice chip rate sampling.











TABLE 4







Two
Three



% Complexity
One Segment
Segments
Segments
Four Segments







Radix-2
100%
75%
60%
50%


(Chip Rate)


Radix-2
100%
76%
60%
50%


(Twice Chip


Rate)









As shown by the tables, in general, as the number of segments increases, the overall complexity decreases. However, if the size of the segments is decreased to far, such as to the length of the impulse response, due to the overlap between segments, the complexity increases.

To illustrate segment-wise channel equalization in a practical system, a TDD burst type 2 is used. A similar segmentations can be used for other bursts, such as a burst type 1. A TDD burst type 2 has two data fields of length 1104 (N=1104). The channel response for these illustrations is of length 63 chips (W=63). Y1 and Y2 are set to W−1 or 62 chips. The following are three potential segmentations, although other segmentations may be used.
The first segmentation divides each data field into two segments of length 552. With overlap between the segments, each segment is of length 676 (Y+Y1+Y2). The second segmentation divides each data field into three segments of length 368. With overlap between the segments, each segment is of length 492 (Y+Y1+Y2). The third segmentation divides each data field into four segments of length 184. With overlap between the segments, each segment is of length 308 (Y+Y1+Y2).

## Claims

1. A method for estimating data of a plurality of received spread spectrum communications, the plurality of received spread spectrum communications received in a shared spectrum, the method comprising:
sampling the received communications to produce a received vector;
processing the received vector to produce a plurality of segments representing continuous and overlapping portions of the received vector; and
processing each segment separately to estimate data of the received communications.

2. The method of claim 1 wherein the processing each segment comprises equalizing each segment.

3. The method of claim 2 wherein the overlapping portions of the received vector have a length of at least a length of an impulse response.

4. The method of claim 2 wherein the processing each segment comprises despreading each equalized segment to recover data of that segment.

5. The method of claim 3 further comprising combining the equalized segments and despreading the equalized combined segments to recover data of the received vector.

6. The method of claim 3 wherein the equalizing each segment uses a minimum mean square error model.

7. The method of claim 3 wherein the equalizing each segment comprises solving a minimum mean square error model using fast Fourier transforms.

8. The method of claim 3 wherein the equalizing each segment comprises solving a minimum mean square error model using Cholesky decomposition.

9. The method of claim 3 wherein the equalizing each segment comprises solving a minimum mean square error model using approximate Cholesky decomposition.

10. The method of claim 3 wherein the equalizing each segment uses a least squares error model.

11. A user equipment for estimating data of a plurality of received spread spectrum communications, the plurality of received spread spectrum communications received in a shared spectrum, the user equipment comprising:
a sampling device configured to sample the received communications to produce a received vector;
a segment-wise channel equalization data detection device configured to process the received vector to produce a plurality of segments representing continuous and overlapping portions of the received vector; and
the segment-wise channel equalization data detection device configured to process each segment separately to estimate data of the received communications.

12. The user equipment of claim 11 wherein the segment-wise channel equalization data detection device is configured to equalize each segment.

13. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to process the received vector to produce overlapping portions of the received vector that have a length of at least a length of an impulse response.

14. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to despread each equalized segment to recover data of that segment.

15. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to combine the equalized segments and to despread the equalized combined segments to recover data of the received vector.

16. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to use a minimum mean square error model for equalizing each segment.

17. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by solving a minimum mean square error model using fast Fourier transforms.

18. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by solving a minimum mean square error model using Cholesky decomposition.

19. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by solving a minimum mean square error model using approximate Cholesky decomposition.

20. The user equipment of claim 12 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by using a least squares error model.

21. A base station for estimating data of a plurality of received spread spectrum communications, the plurality of received spread spectrum communications received in a shared spectrum, the base station comprising:
a sampling device configured to sample the received communications to produce a received vector;
a segment-wise channel equalization data detection device configured to process the received vector to produce a plurality of segments representing continuous and overlapping portions of the received vector; and
the segment-wise channel equalization data detection device configured to process each segment separately to estimate data of the received communications.

22. The base station of claim 21 wherein the segment-wise channel equalization data detection device is configured to equalize each segment.

23. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to process the received vector to produce overlapping portions of the received vector that have a length of at least a length of an impulse response.

24. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to despread each equalized segment to recover data of that segment.

25. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to combine the equalized segments and to despread the equalized combined segments to recover data of the received vector.

26. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to use a minimum mean square error model for equalizing each segment.

27. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by solving a minimum mean square error model using fast Fourier transforms.

28. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by solving a minimum mean square error model using Cholesky decomposition.

29. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by solving a minimum mean square error model using approximate Cholesky decomposition.

30. The base station of claim 22 wherein the segment-wise channel equalization data detection device is configured to equalize each segment by using a least squares error model.

31. A method for estimating data of a plurality of received spread spectrum communications, the plurality of received spread spectrum communications received in a shared spectrum, the method comprising:
sampling the received communications to produce a received vector;
processing the received vector to produce a plurality of segments representing continuous portions of the received vector such that each segment has at least one overlapping portion with another segment of the received vector;
processing each segment separately to estimate data of the received communications including:
equalizing each segment;
discarding the overlapping portions of the segments after equalization; and
despreading each segment.

32. The method of claim 31 further comprising combining the equalized segments and despreading the equalized combined segments to recover data of the received vector.

33. The method of claim 31 wherein the equalizing each segment uses a minimum mean square error model.

34. The method of claim 31 wherein the equalizing each segment comprises solving a minimum mean square error model using fast Fourier transforms.

35. The method of claim 31 wherein the equalizing each segment comprises solving a minimum mean square error model using Cholesky decomposition.

36. The method of claim 31 wherein the equalizing each segment comprises solving a minimum mean square error model using approximate Cholesky decomposition.

37. The method of claim 31 wherein the equalizing each segment uses a least squares error model.

38. A wireless communication apparatus configured to estimate data of a plurality of received spread spectrum communications, the plurality of received spread spectrum communications received in a shared spectrum, the apparatus equipment comprising:
a sampling device configured to sample the received communications to produce a received vector;
a processing component configured to process the received vector to produce a plurality of segments representing continuous portions of the received vector such that each segment has at least one overlapping portion with another segment of the received vector; and
said processing component configured to process each segment separately to estimate data of the received communications by equalizing each segment, discarding the overlapping portions of the equalized segments and then despreading each segment.

39. The wireless communication apparatus of claim 38 wherein said processing component is configured to combine the equalized segments and to despread the equalized combined segments to recover data of the received vector.

40. A user equipment comprising the wireless communication apparatus of claim 39.

41. A base station comprising the wireless communication apparatus of claim 39.

42. The wireless communication apparatus of claim 38 wherein said processing component is configured to equalize each segment using a minimum mean square error model.

43. The wireless communication apparatus of claim 38 wherein said processing component is configured to equalize each segment by solving a minimum mean square error model using fast Fourier transforms.

44. The wireless communication apparatus of claim 38 wherein said processing component is configured to equalize each segment by solving a minimum mean square error model using Cholesky decomposition.

45. The wireless communication apparatus of claim 38 wherein said processing component is configured to equalize each segment by solving a minimum mean square error model using approximate Cholesky decomposition.

46. The wireless communication apparatus of claim 38 wherein said processing component is configured to equalize each segment using a least squares error model.

47. A user equipment comprising the wireless communication apparatus of claim 38.

48. A base station comprising the wireless communication apparatus of claim 38.