Method and apparatus for implementing projections in singal processing applications
AssigneeTensorComm, Inc.
InventorsJohn K. Thomas, Anand P. Narayan
Life of this patent
Estimating the term…
Abstract
A novel method and apparatus is provided for enabling the computation of a signal in a certain subspace, its projection that lies outside the subspace, and the orthogonal basis for a given matrix. More particularly, the present invention relates to the use of such a method or apparatus for real-time hardware applications since the method and apparatus may be utilized without matrix inversions or square root computations.
Claims40
A method for generating a projection of a received signal y, said received signal comprising H, a signal of a source of interest;
- S, the signals of all other sources and multi-path versions of the source of interest and composed of vectors s1, s2, s3, . . . , sp;
- and noise (n);
- the method comprising the steps of:
- determining a basis matrix U composed of basis vectors u1, u2, . . . up;
- storing elements of said basis matrix U;
- generating a diagonal matrix from stored said elements of the basis matrix U;
- generating one or more scalars from the diagonal matrix and from the basis vectors of the basis matrix U;
- and
- applying the one or more scalars to the received signal to project the signal of the source of interest.
A method for generating a projection of a received signal y, said received signal comprising H, a spread signal matrix of a source of interest;
- S, the spread signal matrix of all other sources of interest and composed of vectors s1, s2, s3 . . . , sp;
- and noise n;
- the method comprising the steps of:
- forming an orthogonal basis U of the matrix S, comprising:
- A. assigning si as a first basis vector u1,
- B. determining σi, where uiTui=σi,
- C. storing ui,
- D. computing of inner products of the si+1 and the u1 through ui vectors,
- E. multiplying said inner product with a respective scalar 1/σi and thereby creating a first intermediate product,
- F. scaling each respective basis vector ui by multiplying each respective first intermediate product with each respective basis vector ui,
- G. obtaining a vector sum from step F,
- H. subtracting said vector sum from si+1 to obtain the next basis vector ui+1,
- I. comparing ui+1 to a predetermined value and if equal to or less than said value, discarding the ui+1 and going to step N,
- J. storing ui+1,
- K. determining an inner product of uTi+1ui+1,
- L. determining the reciprocal of step K which is 1/σi+1,
- M. storing 1/σi+1,
- N. incrementing i, and
- O. conducting steps D through N until i=p, where p is the total number of said sources of interest;
- generating a diagonal matrix from stored 1/σi+1 values;
- generating one or more scalars from the diagonal matrix and from the basis vectors of the orthogonal basis U;
- and
- applying the one or more scalars to the received signal to project the source of interest.
A method for generating a projection of a received signal y, said received signal comprising H, a spread signal matrix of a source of interest;
- S, the spread signal matrix of all other sources of interest and composed of vectors s1, s2, s3 . . . , sp;
- and noise (n);
- the method comprising the steps of:
- forming an orthogonal basis U of the matrix S, comprising:
- A. assigning s1 as a first basis vector u1,
- B. determining σi, where uiTui=σi,
- C. storing ui,
- D. computing of inner products of the si+1 and the u1 through ui vectors,
- E. multiplying said inner product with a respective scalar 1/σi and thereby creating a first intermediate product,
- F. scaling each respective basis vector ui by multiplying each respective first intermediate product with each respective basis vector ui,
- G. serially subtracting said intermediate product from si+1,
- H. utilizing the result from step G and subtracting the next incoming value of
- u
- i
-
- 1
- σ
- i
-
- u
- i
- T
-
- s
- i
- +
- 1
- until all the values are processed,
- I. obtaining the next basis vector ui+1from step H,
- J. comparing ui+1 to a predetermined value and if equal to or less than said value, discarding ui+1 and going to step O,
- K. storing ui+1,
- L. determining an inner product of uTi+1ui+1,
- M. determining the reciprocal of step K which is 1/σi+1,
- N. storing 1/σi+1,
- O. incrementing i, and
- P. conducting steps D through O until i=p, where p is the total umber of said sources of interest;
- generating a diagonal matrix from stored 1/σi+1 values;
- generating one or more scalars from the diagonal matrix and from the basis vectors of the orthogonal basis U;
- and
- applying the one or more scalars to the received signal to project the source of interest.
An apparatus for generating a projection of received signal y, said received signal comprising H, a signal of a source of interest;
- S, the signals of all other sources and composed of vectors s1, s2, s3 . . . , sp;
- and noise (n);
- the apparatus comprising:
- means for determining a basis vector U;
- means for storing elements of said basis vector U;
- and
- means for generating a diagonal matrix from stored said elements of the basis vector U;
- means for generating one or more scalars from the diagonal matrix and from the basis vector U;
- and
- means for applying the one or more scalars to the received signal to project the signal of the source of interest.
An apparatus for generating a projection of a received signal y, said received signal comprising H, a spread signal matrix of a source of interest;
- S, the spread signal matrix of all other sources of interest and composed of vectors s1, s2, s3 . . . , sp;
- and noise (n);
- the apparatus comprising:
- means for forming an orthogonal basis U of the matrix S, comprising:
- A. means for assigning s1 as a first basis vector ui,
- B. means for determining σi, where uiTui=σi,
- C. means for storing ui,
- D. means for computing of inner products of the si+1 and the u1 through ui vectors,
- E. means for multiplying said inner product with a respective scalar 1/σi and thereby creating a first intermediate product,
- F. means for scaling each respective basis vector ui by multiplying each respective first intermediate product with each respective basis vector ui,
- G. means for obtaining a vector sum from step F,
- H. means for subtracting said vector sum from si+1 to obtain the next basis vector ui+1,
- I. means for comparing ui+1 to a predetermined value and if equal to or less than said value, discarding this ui+1 and going to step N,
- J. means for storing ui+1,
- K. means for determining an inner product of uTi+1ui+1,
- L. means for determining the reciprocal of step K which is 1/σi+1,
- M. means for storing 1/σi+1,
- N. means for incrementing i,
- O. means for conducting steps D through N until i=p, where p is the total number of said sources of interest;
- means for generating a diagonal matrix from stored 1/σi+1 values;
- means for generating one or more scalars from the diagonal matrix and from the basis vectors of the orthogonal basis U;
- and
- means for applying the one or more scalars to the received signal to project the source of interest.
An apparatus for generating a projection from a received signal y, said received signal comprising H, a spread signal matrix of a source of interest;
- S, the spread signal matrix of all other sources of interest and composed of vectors s1, s2, s3 . . . , sp;
- and noise (n);
- the apparatus comprising:
- means for forming an orthogonal basis U of the matrix S, comprising:
- A. means for assigning s1 as a first basis vector ui,
- B. means for determining σi, where uiTui=σi,
- C. means for storing ui,
- D. means for computing of inner products of the si+1 and the u1 through ui vectors,
- E. means for multiplying said inner product with a respective scalar 1/σi and thereby creating a first intermediate product,
- F. means for scaling each respective basis vector ui by multiplying each respective first intermediate product with each respective basis vector ui,
- G. means for serially subtracting said intermediate product from si+1,
- H. means for utilizing the result from step G and subtracting the next incoming value of
- u
- i
-
- 1
- σ
- i
-
- u
- i
- T
-
- s
- i
- +
- 1
- until all the values are processed,
- I. means for obtaining the next basis vector ui+1 from step H,
- J. means for comparing ui+1 to a predetermined value and if equal to or less than said value, going to step O,
- K. means for storing ui+1,
- L. means for determining an inner product of uTi+1ui+1,
- M. means for determining the reciprocal of step K which is 1/σi+1,
- N. means for storing 1/σi+1,
- O. means for incrementing i,
- P. means for conducting steps D through O until i=p, where p is the total number of said sources of interest;
- means for generating a diagonal matrix from stored 1/σi+1 values;
- means for generating one or more scalars from the diagonal matrix and from the basis vectors of the orthogonal basis U;
- and
- means for applying the one or more scalars to the received signal to project the source of interest.
A method for generating a projection of a received signal y, said received signal comprising H, a signal of a source of interest;
- S, the signals of all other sources and multi-path versions of the source of interest and composed of vectors s1, s2, s3 . . . , sp;
- and noise (n);
- the method comprising the steps of:
- determining a basis matrix U composed of basis vectors u1, u2 . . . , up;
- storing elements of said basis matrix U;
- generating a diagonal matrix from stored said elements of the basis matrix U;
- generating one or more scalars from the diagonal matrix and from the basis vectors of the basis matrix U;
- applying the one or more scalars to the received signal to project the signal of the source of interest:
- and
- determining
- y
- s
- =
- u
- 1
-
- 1
- σ
- 1
-
- u
- 1
- T
-
- y
- -
- u
- 2
-
- 1
- σ
- 2
-
- u
- 2
- T
-
- y
- -
- …
-
-
- u
- p
- -
- 1
-
- 1
- σ
- p
- -
- 1
-
- u
- p
- -
- 1
- T
-
- y
- -
- u
- p
-
- 1
- σ
- p
-
- u
- p
- T
-
- y
- ,
- wherein ys is a projected said signal of the source of interest.
An apparatus for generating a projection from a received signal y, said received signal comprising H, a signal of a source of interest;
- S, the signals of all other sources and composed of vectors s1, s2, s3 . . . , sp;
- and noise (n);
- the apparatus comprising:
- means for determining a basis vector U;
- means for storing elements of said basis vector U;
- means for generating a diagonal matrix from stored said elements of the basis vector U;
- means for generating one or more scalars from the diagonal matrix and from the basis vector U;
- means for applying the one or more scalars to the received signal to project the signal of the source of interest;
- and
- means for determining
- y
- s
- =
- u
- 1
-
- 1
- σ
- 1
-
- u
- 1
- T
-
- y
- -
- u
- 2
-
- 1
- σ
- 2
-
- u
- 2
- T
-
- y
- -
- …
-
-
- u
- p
- -
- 1
-
- 1
- σ
- p
- -
- 1
-
- u
- p
- -
- 1
- T
-
- y
- -
- u
- p
-
- 1
- σ
- p
-
- u
- p
- T
-
- y
- ,
- wherein ys is a projected said signal of the source of interest.
A system, comprising:
- means for generating a first matrix from a received signal, wherein the received signal comprises a plurality of signals;
- means for generating a second matrix from the first matrix, wherein the second matrix is a substantially orthogonal basis of the first matrix;
- means for storing values used in generating the second matrix;
- means for generating a diagonal matrix from stored said values;
- means for generating one or more scalars from the diagonal matrix and from the second matrix;
- and
- means for multiplying the one or more scalars to the received signal to project the received signal substantially orthogonal to said plurality of signals.
A method, comprising:
- generating a first matrix from a received signal, wherein the received signal comprises a plurality of signals;
- generating a second matrix from the first matrix, wherein the second matrix is a substantially orthogonal basis of the first matrix;
- storing values used in generating the second matrix;
- generating a diagonal matrix from stored said values;
- generating one or more scalars from the diagonal matrix and from the second matrix;
- and
- multiplying the one or more scalars to the received signal to project the received signal substantially orthogonal to said plurality of signals.
Dependencies are inferred from the claim text.