A multi-scale shuffle is used in the generation of orthogonal and pseudo-orthogonal codes. A method for generating a family of pseudo-random orthogonal or pseudo-orthogonal code signals, comprises the steps of (1) generating a seed matrix of original dimensions, (2) performing a plurality of expansions on the seed matrix, each successive expansion producing a next generation matrix of larger dimensions, the last of the expansions including replication and shuffling of a parent generation matrix to produce a child generation matrix, and (3) output row of the final matrix as the family code signals. The shuffling may comprise a pseudo-random re-ordering of matrix column indices. The replication and shuffling may comprise forming a child generation matrix by operations that include combining a reproduction of the parent matrix and a shuffled reproduction of the parent matrix. The replication and shuffling also may comprise forming an intermediate matrix by operations that include combining a reproduction of the parent matrix, a modified reproduction of the parent matrix, a shuffled reproduction of the parent matrix, and a modified shuffled reproduction of the parent matrix, and then shuffling the intermediate matrix to form the child matrix.
A method for generating random data, the method comprising repeatedly performing a series of operations, and the series of operations comprising processing a seed value to generate a resulting value for use as the seed value in a subsequent performance of the series of operations and to generate output random data; wherein the series of operations also comprises: determining whether a predetermined amount of new truly random data is available; and if such data is available, modifying the generation of at least the resulting value in dependence on the new truly random data.
A code indexing system for a CDMA communication station that uses orthogonal variable spreading factor (OVSF) codes has a single number mapped to each code. The new code number itself not only provides the code signature, but it is also used for the OVSF code generation. In addition, the system provides easy and fast generation of the available code list without the help of look-up table. This capability improves the dynamic code assignment.