IP Library Granted Patent US 8,149,958
Granted Patent B2
US 8,149,958 · App. 12/214,636 · Granted Apr 3, 2012

Low par zero auto-correlation zone sequences for code sequence modulation

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 8,149,958
App. No.
12/214,636
Granted
Apr 3, 2012
Kind
B2
Abstract

In one non-limiting exemplary embodiment, a method includes: randomly selecting a set of sequences with each sequence having sequence elements, each sequence element having a frequency selected from constellation points on a unit circle in a complex plane, where the selected set of sequences is a candidate set of sequences; calculating a first cubic metric for each sequence of the candidate set of sequences, where the first cubic metric is for single code modulation; and in response to the first cubic metric being larger than at least one threshold, removing the corresponding sequence from the candidate set of sequences to obtain at least one saved sequence.

Claims (956)

1. A method comprising:

randomly selecting a set of sequences with each sequence comprised of sequence elements, each sequence element having a frequency selected from constellation points on a unit circle in a complex plane, where the selected set of sequences comprises a candidate set of sequences;

calculating a first cubic metric for each sequence of the candidate set of sequences, where the first cubic metric is for single code modulation; and

in response to the first cubic metric being larger than at least one threshold, removing the corresponding sequence from the candidate set of sequences to obtain at least one saved sequence.

2. A method as in claim 1 , further comprising:

calculating a second cubic metric for each sequence of the candidate set of sequences, where the second cubic metric is for multi-code modulation; and

in response to at least one of the first cubic metric or the second cubic metric being larger than the at least one threshold, removing the corresponding sequence from the candidate set of sequences to obtain the at least one saved sequence.

3. A method as in claim 2 , where the at least one threshold comprises a first threshold and a second threshold, where removing the corresponding sequence is performed in response to at least one of the first cubic metric being larger than the first threshold or the second cubic metric being larger than the second threshold.

4. A method as in claim 1 , further comprising:

calculating cross-correlations for a plurality of different cyclic shift combinations of each sequence of the candidate set of sequences against a second sequence set;

selecting a cross-correlation value having a largest amplitude as a representative cross-correlation value for the cross-correlations between the corresponding sequence and the second sequence set; and

in response to the representative cross-correlation value being larger than a threshold, removing the corresponding sequence from the candidate set of sequences.

5. A method as in claim 4 , where the second sequence set is comprised of second sequences having a length of 36 sequence elements or second sequences having a length of 12 sequence elements.

6. A method as in claim 1 , where the at least one saved sequence is used for sequence modulation on a physical uplink control channel.

7. A method as in claim 1 , where two consecutive cyclic shifts are used in multi-code modulation based on the at least one saved sequence.

8. A method as in claim 1 , where the at least one saved sequence comprises a plurality of random zero auto-correlation-like sequences.

9. A method as in claim 1 , where each sequence element of the sequences in the selected set of sequences has a frequency selected from four possible constellation points on a unit circle.

10. A method as in claim 1 , where the at least one saved sequence has a length of one resource block or two resource blocks.

11. A method as in claim 1 , where the at least one saved sequence comprises at least one of:

element

1

 0.7071 − 0.7071i

−0.7071 + 0.7071i

 0.7071 + 0.7071i

0.7071 + 0.7071i

2

−0.7071 + 0.7071i

 0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i 

3

 0.7071 − 0.7071i

 0.7071 − 0.7071i

−0.7071 − 0.7071i

0.7071 + 0.7071i

4

 0.7071 + 0.7071i

 0.7071 − 0.7071i

−0.7071 − 0.7071i

0.7071 − 0.7071i

5

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

0.7071 + 0.7071i

6

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

7

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 − 0.7071i

−0.7071 + 0.7071i 

8

−0.7071 − 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

9

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

0.7071 − 0.7071i

10

 0.7071 + 0.7071i

 0.7071 + 0.7071i

 0.7071 + 0.7071i

0.7071 − 0.7071i

11

 0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

12

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

0.7071 − 0.7071i

element

1

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 + 0.7071i

2

−0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

3

 0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

4

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

5

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 − 0.7071i

6

 0.7071 + 0.7071i

−0.7071 + 0.7071i

 0.7071 − 0.7071i

7

−0.7071 − 0.7071i

−0.7071 − 0.7071i

−0.7071 − 0.7071i

8

−0.7071 − 0.7071i

−0.7071 − 0.7071i

−0.7071 − 0.7071i

9

 0.7071 − 0.7071i

−0.7071 + 0.7071i

 0.7071 + 0.7071i

10

 0.7071 − 0.7071i

 0.7071 + 0.7071i

−0.7071 − 0.7071i

11

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

12

−0.7071 − 0.7071i

 0.7071 − 0.7071i

 0.7071 − 0.7071i.

12. A method as in claim 1 , where the at least one saved sequence comprises at least one of:

element

1

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

2

−0.7071 − 0.7071i

0.7071 − 0.7071i

−0.7071 + 0.7071i

3

−0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

4

 0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

5

−0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

6

 0.7071 + 0.7071i

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

7

−0.7071 − 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

8

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

9

 0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

10

−0.7071 + 0.7071i

0.7071 + 0.7071i

 0.7071 − 0.7071i

11

 0.7071 + 0.7071i

0.7071 − 0.7071i

 0.7071 + 0.7071i

12

 0.7071 + 0.7071i

0.7071 + 0.7071i

 0.7071 + 0.7071i

13

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

 0.7071 + 0.7071i

14

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

15

 0.7071 − 0.7071i

−0.7071 + 0.7071i 

 0.7071 + 0.7071i

16

 0.7071 − 0.7071i

0.7071 − 0.7071i

 0.7071 − 0.7071i

17

−0.7071 − 0.7071i

0.7071 + 0.7071i

−0.7071 + 0.7071i

18

 0.7071 + 0.7071i

0.7071 + 0.7071i

−0.7071 − 0.7071i

19

−0.7071 − 0.7071i

−0.7071 − 0.7071i 

−0.7071 − 0.7071i

20

 0.7071 − 0.7071i

0.7071 + 0.7071i

 0.7071 + 0.7071i

21

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

22

 0.7071 + 0.7071i

0.7071 − 0.7071i

 0.7071 + 0.7071i

23

 0.7071 + 0.7071i

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

24

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

element

1

0.7071 − 0.7071i

 0.7071 − 0.7071i

2

0.7071 − 0.7071i

 0.7071 + 0.7071i

3

0.7071 − 0.7071i

−0.7071 − 0.7071i

4

−0.7071 − 0.7071i 

−0.7071 − 0.7071i

5

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

6

0.7071 − 0.7071i

 0.7071 − 0.7071i

7

0.7071 + 0.7071i

−0.7071 + 0.7071i

8

0.7071 + 0.7071i

 0.7071 − 0.7071i

9

−0.7071 + 0.7071i 

 0.7071 − 0.7071i

10

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

11

0.7071 − 0.7071i

−0.7071 − 0.7071i

12

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

13

0.7071 − 0.7071i

 0.7071 − 0.7071i

14

0.7071 + 0.7071i

−0.7071 − 0.7071i

15

0.7071 − 0.7071i

−0.7071 − 0.7071i

16

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

17

0.7071 + 0.7071i

 0.7071 − 0.7071i

18

0.7071 − 0.7071i

 0.7071 + 0.7071i

19

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

20

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

21

0.7071 + 0.7071i

 0.7071 − 0.7071i

22

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

23

0.7071 − 0.7071i

 0.7071 − 0.7071i

24

0.7071 − 0.7071i

  −0.7071 + 0.7071i.

13. A method as in claim 1 , where the at least one saved sequence is used for sequence modulation for at least one communication transmitted from a mobile station.

14. A method as in claim 1 , where the at least one saved sequence is used for sequence modulation for at least one communication received by a base station.

15. A method as in claim 1 , where the at least one saved sequence is used for at least one wireless communication within an evolved universal terrestrial radio access network.

16. A method as in claim 1 , where the at least one saved sequence comprises a plurality of saved sequences, the method further comprising: selecting a subset of the plurality of saved sequences.

17. A method as in claim 16 , where selecting the subset of the plurality of saved sequences comprises:

calculating cross-correlations for each pair of sequences of the plurality of saved sequences for a plurality of different cyclic shift combinations;

selecting a cross-correlation value having a largest amplitude as a cross-correlation representative value for the cross-correlations between the corresponding pair of sequences; and

iterating the sequences of the plurality of saved sequences in the following manner to obtain the subset of the plurality of saved sequences, where zero or more of the sequences of the plurality of saved sequences are removed on each iteration:

for each sequence of the plurality of saved sequences, counting a first number of representative values exceeding a first cross-correlation threshold, a second number of representative values exceeding a second cross-correlation threshold and a third number of representative values exceeding a third cross-correlation threshold, where the first cross-correlation threshold is greater than the second cross-correlation threshold and the second cross-correlation threshold is greater than the third cross-correlation threshold;

selecting for further consideration those sequences having the first number of representative values equal to a maximum first number of representative values over all sequences under consideration;

selecting for further consideration those sequences having the second number of representative values equal to a maximum second number of representative values over all sequences under consideration;

removing a sequence having a largest third number of representative values over all sequences under consideration;

removing the cross-correlation representative values related to the removed sequence; and

placing remaining sequences back under consideration.

18. A method as in claim 16 , where selecting the subset of the plurality of saved sequences comprises:

calculating cross-correlations for each pair of sequences of the plurality of saved sequences for a first plurality of different cyclic shift combinations;

selecting a cross-correlation value having a largest amplitude as a cross-correlation representative value for the cross-correlations between the corresponding pair of sequences;

for each pair of sequences, calculating mean squared difference between the cross-correlations and m/sqrt(N) over a second plurality of different cyclic shift combination, where m comprises a scaling factor and N comprises a sequence length;

iterating the sequences of the plurality of saved sequences in the following manner to obtain the subset of the plurality of saved sequences, where zero or more of the sequences of the plurality of saved sequences are removed on each iteration:

for each sequence of the plurality of saved sequences, counting a number of representative values exceeding a cross-correlation threshold;

selecting for further consideration those sequences having the number of representative values equal to a maximum number of representative values over all sequences under consideration;

removing a sequence having a largest mean squared difference over all sequences under consideration;

removing the cross-correlation representative values and the mean squared difference values related to the removed sequence; and

placing remaining sequences back under consideration.

19. A non-transitory program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine for performing operations, said operations comprising:

randomly selecting a set of sequences with each sequence comprised of sequence elements, each sequence element having a frequency selected from constellation points on a unit circle in a complex plane, where the selected set of sequences comprises a candidate set of sequences;

calculating a first cubic metric for each sequence of the candidate set of sequences, where the first cubic metric is for single code modulation; and

in response to the first cubic metric being larger than at least one threshold, removing the corresponding sequence from the candidate set of sequences to obtain at least one saved sequence.

20. A program storage device as in claim 19 , further comprising:

calculating a second cubic metric for each sequence of the candidate set of sequences, where the second cubic metric is for multi-code modulation; and

in response to at least one of the first cubic metric or the second cubic metric being larger than the at least one threshold, removing the corresponding sequence from the candidate set of sequences to obtain the at least one saved sequence.

21. A program storage device as in claim 20 , where the at least one threshold comprises a first threshold and a second threshold, where removing the corresponding sequence is performed in response to at least one of the first cubic metric being larger than the first threshold or the second cubic metric being larger than the second threshold.

22. A program storage device as in claim 19 , the operations further comprising:

calculating cross-correlations for a plurality of different cyclic shift combinations of each sequence of the candidate set of sequences against a second sequence set;

selecting a cross-correlation value having a largest amplitude as a representative cross-correlation value for the cross-correlations between the corresponding sequence and the second sequence set; and

in response to the representative cross-correlation value being larger than a threshold, removing the corresponding sequence from the candidate set of sequences.

23. A program storage device as in claim 19 , where the at least one saved sequence comprises at least one of:

element

1

 0.7071 − 0.7071i

−0.7071 + 0.7071i

 0.7071 + 0.7071i

0.7071 + 0.7071i

2

−0.7071 + 0.7071i

 0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i 

3

 0.7071 − 0.7071i

 0.7071 − 0.7071i

−0.7071 − 0.7071i

0.7071 + 0.7071i

4

 0.7071 + 0.7071i

 0.7071 − 0.7071i

−0.7071 − 0.7071i

0.7071 − 0.7071i

5

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

0.7071 + 0.7071i

6

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

7

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 − 0.7071i

−0.7071 + 0.7071i 

8

−0.7071 − 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

9

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

0.7071 − 0.7071i

10

 0.7071 + 0.7071i

 0.7071 + 0.7071i

 0.7071 + 0.7071i

0.7071 − 0.7071i

11

 0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

12

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

0.7071 − 0.7071i

element

1

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 + 0.7071i

2

−0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

3

 0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

4

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

5

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 − 0.7071i

6

 0.7071 + 0.7071i

−0.7071 + 0.7071i

 0.7071 − 0.7071i

7

−0.7071 − 0.7071i

−0.7071 − 0.7071i

−0.7071 − 0.7071i

8

−0.7071 − 0.7071i

−0.7071 − 0.7071i

−0.7071 − 0.7071i

9

 0.7071 − 0.7071i

−0.7071 + 0.7071i

 0.7071 + 0.7071i

10

 0.7071 − 0.7071i

 0.7071 + 0.7071i

−0.7071 − 0.7071i

11

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

12

−0.7071 − 0.7071i

 0.7071 − 0.7071i

 0.7071 − 0.7071i.

24. A program storage device as in claim 19 , where the at least one saved sequence comprises at least one of:

element

1

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

2

−0.7071 − 0.7071i

0.7071 − 0.7071i

−0.7071 + 0.7071i

3

−0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

4

 0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

5

−0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

6

 0.7071 + 0.7071i

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

7

−0.7071 − 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

8

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

9

 0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

10

−0.7071 + 0.7071i

0.7071 + 0.7071i

 0.7071 − 0.7071i

11

 0.7071 + 0.7071i

0.7071 − 0.7071i

 0.7071 + 0.7071i

12

 0.7071 + 0.7071i

0.7071 + 0.7071i

 0.7071 + 0.7071i

13

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

 0.7071 + 0.7071i

14

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

15

 0.7071 − 0.7071i

−0.7071 + 0.7071i 

 0.7071 + 0.7071i

16

 0.7071 − 0.7071i

0.7071 − 0.7071i

 0.7071 − 0.7071i

17

−0.7071 − 0.7071i

0.7071 + 0.7071i

−0.7071 + 0.7071i

18

 0.7071 + 0.7071i

0.7071 + 0.7071i

−0.7071 − 0.7071i

19

−0.7071 − 0.7071i

−0.7071 − 0.7071i 

−0.7071 − 0.7071i

20

 0.7071 − 0.7071i

0.7071 + 0.7071i

 0.7071 + 0.7071i

21

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

22

 0.7071 + 0.7071i

0.7071 − 0.7071i

 0.7071 + 0.7071i

23

 0.7071 + 0.7071i

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

24

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

element

1

0.7071 − 0.7071i

 0.7071 − 0.7071i

2

0.7071 − 0.7071i

 0.7071 + 0.7071i

3

0.7071 − 0.7071i

−0.7071 − 0.7071i

4

−0.7071 − 0.7071i 

−0.7071 − 0.7071i

5

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

6

0.7071 − 0.7071i

 0.7071 − 0.7071i

7

0.7071 + 0.7071i

−0.7071 + 0.7071i

8

0.7071 + 0.7071i

 0.7071 − 0.7071i

9

−0.7071 + 0.7071i 

 0.7071 − 0.7071i

10

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

11

0.7071 − 0.7071i

−0.7071 − 0.7071i

12

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

13

0.7071 − 0.7071i

 0.7071 − 0.7071i

14

0.7071 + 0.7071i

−0.7071 − 0.7071i

15

0.7071 − 0.7071i

−0.7071 − 0.7071i

16

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

17

0.7071 + 0.7071i

 0.7071 − 0.7071i

18

0.7071 − 0.7071i

 0.7071 + 0.7071i

19

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

20

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

21

0.7071 + 0.7071i

 0.7071 − 0.7071i

22

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

23

0.7071 − 0.7071i

 0.7071 − 0.7071i

24

0.7071 − 0.7071i

−0.7071 + 0.7071i.

25. A program storage device as in claim 19 , where the at least one saved sequence is used for at least one wireless communication within an evolved universal terrestrial radio access network.

26. A program storage device as in claim 19 , where the at least one saved sequence comprises a plurality of saved sequences, the operations further comprising: selecting a subset of the plurality of saved sequences, where selecting the subset of the plurality of saved sequences comprises:

calculating cross-correlations for each pair of sequences of the plurality of saved sequences for a plurality of different cyclic shift combinations;

selecting a cross-correlation value having a largest amplitude as a cross-correlation representative value for the cross-correlations between the corresponding pair of sequences; and

iterating the sequences of the plurality of saved sequences in the following manner to obtain the subset of the plurality of saved sequences, where zero or more of the sequences of the plurality of saved sequences are removed on each iteration:

for each sequence of the plurality of saved sequences, counting a first number of representative values exceeding a first cross-correlation threshold, a second number of representative values exceeding a second cross-correlation threshold and a third number of representative values exceeding a third cross-correlation threshold, where the first cross-correlation threshold is greater than the second cross-correlation threshold and the second cross-correlation threshold is greater than the third cross-correlation threshold;

selecting for further consideration those sequences having the first number of representative values equal to a maximum first number of representative values over all sequences under consideration;

selecting for further consideration those sequences having the second number of representative values equal to a maximum second number of representative values over all sequences under consideration;

removing a sequence having a largest third number of representative values over all sequences under consideration;

removing the cross-correlation representative values related to the removed sequence; and

placing remaining sequences back under consideration.

27. A program storage device as in claim 19 , where the at least one saved sequence comprises a plurality of saved sequences, the operations further comprising: selecting a subset of the plurality of saved sequences, where selecting the subset of the plurality of saved sequences comprises:

calculating cross-correlations for each pair of sequences of the plurality of saved sequences for a first plurality of different cyclic shift combinations;

selecting a cross-correlation value having a largest amplitude as a cross-correlation representative value for the cross-correlations between the corresponding pair of sequences;

for each pair of sequences, calculating mean squared difference between the cross-correlations and m/sqrt(N) over a second plurality of different cyclic shift combination, where m comprises a scaling factor and N comprises a sequence length;

iterating the sequences of the plurality of saved sequences in the following manner to obtain the subset of the plurality of saved sequences, where zero or more of the sequences of the plurality of saved sequences are removed on each iteration:

for each sequence of the plurality of saved sequences, counting a number of representative values exceeding a cross-correlation threshold;

selecting for further consideration those sequences having the number of representative values equal to a maximum number of representative values over all sequences under consideration;

removing a sequence having a largest mean squared difference over all sequences under consideration;

removing the cross-correlation representative values and the mean squared difference values related to the removed sequence; and

placing remaining sequences back under consideration.

28. An apparatus comprising: a memory and at least one processor, where the at least one processor is configured to:

randomly select a set of sequences with each sequence comprised of sequence elements, each sequence element having a frequency selected from constellation points on a unit circle in a complex plane, where the selected set of sequences comprises a candidate set of sequences;

calculate a first cubic metric for each sequence of the candidate set of sequences, where the first cubic metric is for single code modulation; and

in response to the first cubic metric being larger than at least one threshold, remove the corresponding sequence from the candidate set of sequences to obtain at least one saved sequence, where the at least one saved sequence is stored on the memory.

29. An apparatus as in claim 28 , where the at least one processor is further configured to:

calculate a second cubic metric for each sequence of the candidate set of sequences, where the second cubic metric is for multi-code modulation; and

in response to at least one of the first cubic metric or the second cubic metric being larger than at least one threshold, remove the corresponding sequence from the candidate set of sequences to obtain the at least one saved sequence.

30. An apparatus as in claim 29 , where the at least one threshold comprises a first threshold and a second threshold, where the at least one processor is configured to remove the corresponding sequence in response to at least one of the first cubic metric being larger than the first threshold or the second cubic metric being larger than the second threshold.

31. An apparatus as in claim 28 , where the processor is further configured to:

calculate cross-correlations for a plurality of different cyclic shift combinations of each sequence of the candidate set of sequences against a second sequence set;

select a cross-correlation value having a largest amplitude as a representative cross-correlation value for the cross-correlations between the corresponding sequence and the second sequence set; and

in response to the representative cross-correlation value being larger than a threshold, remove the corresponding sequence from the candidate set of sequences.

32. An apparatus as in claim 28 , where the at least one saved sequence comprises at least one of:

element

1

 0.7071 − 0.7071i

−0.7071 + 0.7071i

 0.7071 + 0.7071i

0.7071 + 0.7071i

2

−0.7071 + 0.7071i

 0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i 

3

 0.7071 − 0.7071i

 0.7071 − 0.7071i

−0.7071 − 0.7071i

0.7071 + 0.7071i

4

 0.7071 + 0.7071i

 0.7071 − 0.7071i

−0.7071 − 0.7071i

0.7071 − 0.7071i

5

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

0.7071 + 0.7071i

6

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

7

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 − 0.7071i

−0.7071 + 0.7071i 

8

−0.7071 − 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

9

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

0.7071 − 0.7071i

10

 0.7071 + 0.7071i

 0.7071 + 0.7071i

 0.7071 + 0.7071i

0.7071 − 0.7071i

11

 0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

12

−0.7071 − 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

0.7071 − 0.7071i

element

1

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 + 0.7071i

2

−0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

3

 0.7071 + 0.7071i

 0.7071 + 0.7071i

−0.7071 + 0.7071i

4

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

5

−0.7071 − 0.7071i

−0.7071 − 0.7071i

 0.7071 − 0.7071i

6

 0.7071 + 0.7071i

−0.7071 + 0.7071i

 0.7071 − 0.7071i

7

−0.7071 − 0.7071i

−0.7071 − 0.7071i

−0.7071 − 0.7071i

8

−0.7071 − 0.7071i

−0.7071 − 0.7071i

−0.7071 − 0.7071i

9

 0.7071 − 0.7071i

−0.7071 + 0.7071i

 0.7071 + 0.7071i

10

 0.7071 − 0.7071i

 0.7071 + 0.7071i

−0.7071 − 0.7071i

11

 0.7071 + 0.7071i

−0.7071 + 0.7071i

−0.7071 + 0.7071i

12

−0.7071 − 0.7071i

 0.7071 − 0.7071i

 0.7071 − 0.7071i.

33. An apparatus as in claim 28 , where the at least one saved sequence comprises at least one of:

element

1

−0.7071 − 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

2

−0.7071 − 0.7071i

0.7071 − 0.7071i

−0.7071 + 0.7071i

3

−0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

4

 0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

5

−0.7071 + 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

6

 0.7071 + 0.7071i

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

7

−0.7071 − 0.7071i

0.7071 − 0.7071i

−0.7071 − 0.7071i

8

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

9

 0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

10

−0.7071 + 0.7071i

0.7071 + 0.7071i

 0.7071 − 0.7071i

11

 0.7071 + 0.7071i

0.7071 − 0.7071i

 0.7071 + 0.7071i

12

 0.7071 + 0.7071i

0.7071 + 0.7071i

 0.7071 + 0.7071i

13

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

 0.7071 + 0.7071i

14

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

15

 0.7071 − 0.7071i

−0.7071 + 0.7071i 

 0.7071 + 0.7071i

16

 0.7071 − 0.7071i

0.7071 − 0.7071i

 0.7071 − 0.7071i

17

−0.7071 − 0.7071i

0.7071 + 0.7071i

−0.7071 + 0.7071i

18

 0.7071 + 0.7071i

0.7071 + 0.7071i

−0.7071 − 0.7071i

19

−0.7071 − 0.7071i

−0.7071 − 0.7071i 

−0.7071 − 0.7071i

20

 0.7071 − 0.7071i

0.7071 + 0.7071i

 0.7071 + 0.7071i

21

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 + 0.7071i

22

 0.7071 + 0.7071i

0.7071 − 0.7071i

 0.7071 + 0.7071i

23

 0.7071 + 0.7071i

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

24

−0.7071 + 0.7071i

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

element

1

0.7071 − 0.7071i

 0.7071 − 0.7071i

2

0.7071 − 0.7071i

 0.7071 + 0.7071i

3

0.7071 − 0.7071i

−0.7071 − 0.7071i

4

−0.7071 − 0.7071i 

−0.7071 − 0.7071i

5

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

6

0.7071 − 0.7071i

 0.7071 − 0.7071i

7

0.7071 + 0.7071i

−0.7071 + 0.7071i

8

0.7071 + 0.7071i

 0.7071 − 0.7071i

9

−0.7071 + 0.7071i 

 0.7071 − 0.7071i

10

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

11

0.7071 − 0.7071i

−0.7071 − 0.7071i

12

−0.7071 + 0.7071i 

−0.7071 − 0.7071i

13

0.7071 − 0.7071i

 0.7071 − 0.7071i

14

0.7071 + 0.7071i

−0.7071 − 0.7071i

15

0.7071 − 0.7071i

−0.7071 − 0.7071i

16

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

17

0.7071 + 0.7071i

 0.7071 − 0.7071i

18

0.7071 − 0.7071i

 0.7071 + 0.7071i

19

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

20

−0.7071 − 0.7071i 

−0.7071 + 0.7071i

21

0.7071 + 0.7071i

 0.7071 − 0.7071i

22

−0.7071 − 0.7071i 

 0.7071 + 0.7071i

23

0.7071 − 0.7071i

 0.7071 − 0.7071i

24

0.7071 − 0.7071i

−0.7071 + 0.7071i.

34. An apparatus as in claim 28 , further comprising a transceiver, where the at least one saved sequence is used for at least one wireless communication, via the transceiver, within an evolved universal terrestrial radio access network.

35. An apparatus as in claim 28 , where the at least one saved sequence comprises a plurality of saved sequences, the at least one processor being further configured to select a subset of the plurality of saved sequences, where the at least one processor selecting the subset of the plurality of saved sequences comprises the at least one processor:

calculating cross-correlations for each pair of sequences of the plurality of saved sequences for a plurality of different cyclic shift combinations;

selecting a cross-correlation value having a largest amplitude as a cross-correlation representative value for the cross-correlations between the corresponding pair of sequences; and

iterating the sequences of the plurality of saved sequences in the following manner to obtain the subset of the plurality of saved sequences, where zero or more of the sequences of the plurality of saved sequences are removed on each iteration:

for each sequence of the plurality of saved sequences, counting a first number of representative values exceeding a first cross-correlation threshold, a second number of representative values exceeding a second cross-correlation threshold and a third number of representative values exceeding a third cross-correlation threshold, where the first cross-correlation threshold is greater than the second cross-correlation threshold and the second cross-correlation threshold is greater than the third cross-correlation threshold;

selecting for further consideration those sequences having the first number of representative values equal to a maximum first number of representative values over all sequences under consideration;

selecting for further consideration those sequences having the second number of representative values equal to a maximum second number of representative values over all sequences under consideration;

removing a sequence having a largest third number of representative values over all sequences under consideration;

removing the cross-correlation representative values related to the removed sequence; and

placing remaining sequences back under consideration.

36. An apparatus as in claim 28 , where the at least one saved sequence comprises a plurality of saved sequences, the at least one processor being further configured to select a subset of the plurality of saved sequences, where the at least one processor selecting the subset of the plurality of saved sequences comprises the at least one processor:

calculating cross-correlations for each pair of sequences of the plurality of saved sequences for a first plurality of different cyclic shift combinations;

selecting a cross-correlation value having a largest amplitude as a cross-correlation representative value for the cross-correlations between the corresponding pair of sequences;

for each pair of sequences, calculating mean squared difference between the cross-correlations and m/sqrt(N) over a second plurality of different cyclic shift combination, where m comprises a scaling factor and N comprises a sequence length;

iterating the sequences of the plurality of saved sequences in the following manner to obtain the subset of the plurality of saved sequences, where zero or more of the sequences of the plurality of saved sequences are removed on each iteration:

for each sequence of the plurality of saved sequences, counting a number of representative values exceeding a cross-correlation threshold;

selecting for further consideration those sequences having the number of representative values equal to a maximum number of representative values over all sequences under consideration;

removing a sequence having a largest mean squared difference over all sequences under consideration;

removing the cross-correlation representative values and the mean squared difference values related to the removed sequence; and

placing remaining sequences back under consideration.

37. An apparatus as in claim 28 , where the apparatus comprises a mobile station.

38. An apparatus as in claim 28 , where the apparatus comprises a base station.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2014
From: NOKIA SOLUTIONS AND NETWORKS OY
To: WIRELESS FUTURE TECHNOLOGIES INC.
Reel/Frame 033325/0189 →
CHANGE OF NAME Recorded Jul 16, 2014
From: NOKIA SIEMENS NETWORKS OY
To: NOKIA SOLUTIONS AND NETWORKS OY
Reel/Frame 033332/0684 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2008
From: HOOLI, KARI; PAJUKOSKI, KARI; TIIROLA, ESA
To: NOKIA SIEMENS NETWORKS OY
Reel/Frame 021433/0784 →