IP Library Granted Patent US 9,036,681
Granted Patent B2
US 9,036,681 · App. 14/046,071 · Granted May 19, 2015

Method, apparatus and computer program for controlling a receiver

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,036,681
App. No.
14/046,071
Granted
May 19, 2015
Kind
B2
Abstract

Linear symbol level equalisation is used to estimate a transmitted symbol vector x n (0) in an nth observation window y n of signals received from multiple users each using a different spreading code. An iterative conjugate gradient algorithm resolves a column vector z that satisfies Az=b, A being a square matrix and b being a column vector. The matrix vector product Ap k used in each respective kth iteration of the algorithm is computed using at least one fast transform. The receiver or detector estimates a posterior mean {circumflex over (x)} LMMSE,n (0) from the computed column vector z, then utilises the estimated posterior mean to determine the transmitted symbol vector x n (0) . The posterior mean {circumflex over (x)} LMMSE,n (0) may be estimated from matrix A and vector b. Different examples have the square matrix A with an inner or an outer product form; and have the fast transform as a fast Walsh-Hadamard transform and/or a fast (inverse) Fourier transform.

Claims (313)

1. A method for using linear symbol level equalisation to control a receiver to estimate a transmitted symbol vector x n (0) in an nth observation window y n of signals received from multiple users each using a different spreading code, the method comprising:

calculating using an iterative conjugate gradient algorithm to resolve a column vector z that satisfies Az=b, where A is a square matrix and b is a column vector, in which a matrix vector product Ap k used in each respective kth iteration of the iterative conjugate gradient algorithm is computed using at least one fast transform operation, in which p k is a conjugate vector for the kth iteration;

estimating a posterior mean {circumflex over (x)} LMMSE,n (0) , wherein LMMSE is a linear minimum mean squared error, from the column vector z; and

estimating the transmitted symbol vector x n (0) using the estimated posterior mean.

2. The method according to claim 1 , in which the posterior mean {circumflex over (x)} LMMSE,n (0) is estimated from the square matrix A and the column vector b, where A has an inner product form which includes computation of Σ n −1 .

3. The method according to claim 2 , in which the matrix vector product Ap k is computed by:

a) multiplying the vector p k with a spreading code matrix containing all active spreading codes;

b) multiplying the result of part a) by a diagonal scrambling code matrix;

c) multiplying the result of part b) by a block-banded block-Toeplitz channel matrix H (0) ;

d) multiplying the result of part c) by the block-banded block-Toeplitz channel matrix (H (0) ) H ;

e) multiplying the result of part d) by a diagonal descrambling code matrix;

f) multiplying the result of part e) with a despreading code matrix containing the active spreading codes; and

g) computing

x

n

(

0

)

-

1

p

k

 by scalar multiplication with

diag

(

σ

x

n

(

0

)

-

2

)

 and adding the result to the scaled result of part f), where

x

n

(

0

)

-

1

 is an inverse covariance matrix;

in which the at least one fast transform operation is a fast Walsh-Hadamard transform operation utilized in part a) and/or in part f).

4. The method according to claim 3 , in which part c) and/or part d) utilize a fast Fourier transform operation and/or fast inverse Fourier transform operation.

5. The method according to claim 3 , in which part c) and/or part d) utilize a block fast Fourier transform operation and/or block fast inverse Fourier transform operation.

6. The method according to claim 2 , in which the matrix vector product Ap k is computed by:

a) multiplying the vector p k with a spreading code matrix containing all active spreading codes;

b) multiplying the result of part a) by a diagonal scrambling code matrix;

c) perform a fast Fourier transform operation on the result of part b);

d) multiplying the transformed result from part c) by a block-diagonal matrix (D (0) ) H D (0) ;

e) performing an inverse fast Fourier transform operation on the result of part d);

f) multiplying the result of part e) by a diagonal descrambling code matrix;

g) multiplying the result of part f) with a despreading code matrix containing the active spreading codes; and

h) computing

x

n

(

0

)

-

1

p

k

 by scalar multiplication with

diag

(

σ

x

n

(

0

)

-

2

)

 and adding the result to the scaled result of part g), where

x

n

(

0

)

-

1

 is an inverse covariance matrix;

in which the at least one fast transform operation is a fast Walsh-Hadamard transform operation utilized in part a) and/or in part g), and/or the fast Fourier transform operation utilized in part c) and/or the fast inverse Fourier transform operation utilized in part e).

7. The method according to claim 6 , in which the fast Fourier transform operation in part c) is a block fast Fourier transform operation and/or the inverse fast Fourier transform operation in part e) is a block inverse fast Fourier transform operation.

8. The method according to claim 1 , in which the posterior mean {circumflex over (x)} LMMSE,n (0) is estimated from the square matrix A and the column vector b, where A has an outer product form which includes computation Σ n .

9. The method according to claim 8 , in which the matrix-vector product is computed as a result vector a k =Ap k by:

a) initialising the result vector a k to zero;

b) for each cell indexed as c=0 to N cells −1:

i. multiplying the vector p k by a block-banded block-Toeplitz channel matrix (H (c) ) H ;

ii. multiplying the result of part i by a diagonal descrambling code matrix;

iii. multiplying the result of part ii with a despreading code matrix containing all active spreading codes;

iv. multiplying the result of part iii by a diagonal covariance matrix

x

n

(

c

)

;

v. multiplying the result of part iv with a spreading code matrix containing all active spreading codes;

vi. multiplying the result of part v by a diagonal scrambling code matrix;

vii. multiplying the result of part vi by a block-banded block-Toeplitz channel matrix H (c) ;

viii. adding the result from part vii to the result vector a k ; and

c) adding variance σ 2 to all elements of the result vector a k .

in which the at least one fast transform operation is a fast Walsh-Hadamard transform operation utilized in part iii and/or in part v.

10. The method according to claim 9 , in which part i and/or part vii utilize a fast Fourier transform operation and/or fast inverse Fourier transform operation.

11. The method according to claim 9 , in which part i and/or part vii utilize a block fast Fourier transform operation and/or block fast inverse Fourier transform operation.

12. The method according to claim 9 , comprising preconditioning the iterative conjugate gradient algorithm with a square full-rank matrix P according to

P

=

(

c

=

0

N

cells

-

1

H

(

c

)

(

H

(

c

)

)

H

+

σ

2

I

)

-

1

;

wherein N cells is a total number of cells considered,

σ 2 is variance of additive white Gaussian noise AWGN

H (c) is a block-circulant matrix, and

I is an identity matrix.

13. A method according to claim 8 , in which the matrix-vector product is computed as a result vector a k =Ap k by:

a) initialising the result vector a k to zero;

b) for each cell indexed as c=0 to N cells −1:

i. multiplying the vector p k by a block-diagonal matrix (D (c) ) H ;

ii. performing an inverse fast Fourier transform operation on the result of part i;

iii. multiplying the result of part ii by the diagonal descrambling code matrix;

iv. multiplying the result of part iii with a despreading code matrix containing all active spreading codes;

v. multiplying the result of part iv by a diagonal covariance matrix

x

n

(

c

)

;

vi. multiplying the result of part v with a spreading code matrix containing all active spreading codes;

vii. multiplying the result of part vi by a diagonal scrambling code matrix;

viii. perform a fast Fourier transform operation on the result of part vii;

ix. multiplying the result of part viii by a block-diagonal matrix D (c)

x. adding the result from part ix to the result vector a k ; and

c) adding variance σ 2 to all elements of the result vector a k ;

in which the at least one fast transform operation is a fast Walsh-Hadamard transform operation utilized in part iv and/or in part vi, and/or the fast Fourier transform operation utilized in part ii and/or the fast inverse Fourier transform operation utilized in part viii.

14. The method according to claim 13 , in which the inverse fast Fourier transform operation in part ii is a block inverse fast Fourier transform operation and/or the fast Fourier transform operation in part viii is a block fast Fourier transform operation.

15. The method according to claim 13 , comprising preconditioning the iterative conjugate gradient algorithm with a square full-rank matrix P according to

P

=

(

c

=

0

N

cells

-

1

D

(

c

)

(

D

(

c

)

)

H

+

σ

2

I

)

-

1

wherein N cells is a total number of cells considered,

D (c) is a block-diagonal matrix for cell c,

σ 2 is variance of additive white Gaussian noise AWGN, and

I is an identity matrix.

16. An apparatus for controlling a receiver to use linear symbol level equalisation for estimating a transmitted symbol vector x n (0) in an nth observation window y n of signals received from multiple users each using a different spreading code, the apparatus comprising:

a processing system comprising at least one processor and at least one memory storing a computer program, where the processing system is configured to cause the apparatus to

utilize an iterative conjugate gradient algorithm to resolve a column vector z that satisfies Az=b, where A is a square matrix and b is a column vector, in which a matrix vector product Ap k used in each respective kth iteration of the iterative conjugate gradient algorithm is computed using at least one fast transform operation, in which p k is a conjugate vector for the kth iteration;

estimate a posterior mean {circumflex over (x)} LMMSE,n (0) ; wherein LMMSE is a linear minimum mean squared error, from the column vector z; and

estimate the transmitted symbol vector x n (0) using the estimated posterior mean.

17. The apparatus according to claim 16 , in which the posterior mean {circumflex over (x)} LMMSE,n (0) is estimated from the square matrix A and the column vector b, where A has an inner product form which includes computation of Σ n −1 .

18. The apparatus according to claim 17 , in which the matrix vector product Ap k is computed by:

a) multiplying the vector p k with a spreading code matrix containing all active spreading codes;

b) multiplying the result of part a) by a diagonal scrambling code matrix;

c) multiplying the result of part b) by a block-banded block-Toeplitz channel matrix H (0) ;

d) multiplying the result of part c) by the block-banded block-Toeplitz channel matrix (H (0) ) H ;

e) multiplying the result of part d) by a diagonal descrambling code matrix;

f) multiplying the result of part e) with a despreading code matrix containing the active spreading codes; and

g) computing

x

n

(

0

)

-

1

p

k

 by scalar multiplication with

diag

(

σ

x

n

(

0

)

-

2

)

 and adding the result to the scaled result of part f), where

x

n

(

0

)

-

1

 is an inverse covariance matrix;

in which the at least one fast transform operation is a fast Walsh-Hadamard transform operation utilized in part a) and/or in part f).

19. The apparatus according to claim 17 , in which the matrix vector product Ap k is computed by:

a) multiplying the vector p k with a spreading code matrix containing all active spreading codes;

b) multiplying the result of part a) by a diagonal scrambling code matrix;

c) perform a fast Fourier transform operation on the result of part b);

d) multiplying the transformed result from part c) by a block-diagonal matrix (D (0) ) H D (0) ,

e) performing an inverse fast Fourier transform operation on the result of part d);

f) multiplying the result of part e) by a diagonal descrambling code matrix;

g) multiplying the result of part f) with a despreading code matrix containing the active spreading codes; and

h) computing

x

n

(

0

)

-

1

p

k

 by scalar multiplication with

diag

(

σ

x

n

(

0

)

-

2

)

 and adding the result to the scaled result of part g), where

x

n

(

0

)

-

1

 is an inverse covariance matrix;

in which the at least one fast transform operation is a fast Walsh-Hadamard transform operation utilized in part a) and/or in part g), and/or the fast Fourier transform operation utilized in part c) and/or the fast inverse Fourier transform operation in part e).

20. A non-transitory computer readable memory storing a set of executable instructions which, when executed on a receiver which utilizes linear symbol level equalisation for estimating a transmitted symbol vector x n (0) in an nth observation window y n of signals received from multiple users each using a different spreading code, causes the receiver to perform steps comprising:

calculating using an iterative conjugate gradient algorithm to resolve a column vector z that satisfies Az=b, where A is a square matrix and b is a column vector, in which a matrix vector product Ap k used in each respective kth iteration of the iterative conjugate gradient algorithm is computed using at least one fast transform, in which p k is a conjugate vector for the kth iteration;

estimating a posterior mean {circumflex over (x)} LMMSE,n (0) , wherein LMMSE is a linear minimum mean squared error, from the column vector z; and

estimating the transmitted symbol vector x n (0) using the estimated posterior mean.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY PREVIOUSLY RECORDED ON REEL 032086 FRAME 0389. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT FROM ONE OR BOTH ASSIGNORS ACCORDING TO PRIOR AGREEMENT.. Recorded Dec 18, 2017
From: RENESAS MOBILE CORPORATION
To: BROADCOM INTERNATIONAL LIMITED
Reel/Frame 046266/0231 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2014
From: BROADCOM INTERNATIONAL LIMITED
To: BROADCOM CORPORATION
Reel/Frame 032088/0794 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2014
From: RENESAS ELECTRONICS CORPORATION; RENESAS MOBILE CORPORATION
To: BROADCOM INTERNATIONAL LIMITED
Reel/Frame 032086/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2013
From: CHRISTENSEN, LARS PUGGAARD BOGILD
To: RENESAS MOBILE CORPORATION
Reel/Frame 031347/0752 →