Patent ID: 7653029

Claim:
A method for processing signals in a communication system, the method comprising: spread spectrum encoding data from each of a plurality of data sources utilizing a plurality of spreading factors wherein at least 2 of said plurality of spreading factors differ; combining a plurality of said spread spectrum encoded data to form a data vector; defining a length for said each of said plurality of data sources, and a corresponding value for each of said plurality of spreading factors, wherein a spreading code corresponding to one of said plurality of spreading factors produces a value of 0 when multiplied by a spreading code corresponding to each remaining one of said plurality of spreading factors, wherein said one of said plurality of spreading factors is represented in a matrix, wherein said matrix is represented as comprising a plurality of submatrices, wherein each of said plurality of submatrices is one of: a square matrix, a diagonal matrix, and a vector; and performing one or more operations, said one or more operations comprising: generating a current intermediate result by multiplying data from one of said plurality of data sources by at least one of said plurality of submatrices, wherein each of said at least one of said plurality of submatrices is one of: said square matrix, said diagonal matrix, and said vector; generating a subsequent intermediate result by multiplying subsequent data from said current intermediate result by a subsequent at least one of said plurality of submatrices wherein each of said subsequent at least one of said plurality of submatrices is one of: said square matrix, said diagonal matrix, and said vector; and generating a portion of said data vector based on said subsequent intermediate result.