ECE 5221 Personal Communication Systems Prepared by: Dr. Ivica Kostanic Lecture 14: Frequency allocation and channelization Spring 2011 Florida Institute of technologies Outline Orthogonal codes o Walsh / OVSF codes o M-codes (PN codes) Use of codes in CDMA systems Important note: Slides present summary of the results. Detailed derivations are given in notes. Florida Institute of technologies Page 2 Walsh codes Orthogonal codes Generation of the Walsh code matrices Length – power of 2 (1,2,4,8,…) 0 0 W2 0 1 Orthogonality maintained under perfect synchronization Used for user channelization when the synchronization between the users can be maintained W2n1 W2n1 W2n W W n1 n1 2 2 o On the DL of the cellular system Example of WC sequence generation: W W4 2 W2 0 W2 0 W2 0 0 0 0 0 1 0 1 0 1 1 1 1 0 0 0 0 0 W8 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 0 0 1 1 1 1 1 0 1 1 0 1 0 0 1 1 1 1 0 0 1 1 0 1 0 0 1 Florida Institute of technologies Page 3 Walsh code orthogonality Code is given as a row in WC matrix To generate a code o “0” -> “1” o “1” -> “-1” Example: Codes W4,2 and W4,3 o W8,2 : (0,0,1,1,0,0,1,1) -> (1,1,-1,-1,1,1,-1,-1) o W8,3 : (0,1,1,0,0,1,1,0) -> (1,-1,-1,1,1,-1,-1,1) When synchronized – codes are orthogonal W8,2 W8,3 (1,1,1,1,1,1,1,1) (1,1,1,1,1,1,1,1) 0 When out of sync – codes are not orthogonal W8,2 shift ( W8,3 ,1) (1,1,1,1,1,1,1,1) (1,1,1,1,1,1,1,1) 8 Florida Institute of technologies Page 4 M codes (PN codes) Have “noise like” auto-correlation properties Generated as output of shift registers that have taps indicated by primitive polynomials o Taps need to be in “special places” o Location of taps for different code lengths: http://www.newwaveinstruments.com/resources/articles/m_sequence_linear_feedba ck_shift_register_lfsr.htm Shift register for generation of binary sequence Florida Institute of technologies Page 5 M sequences - properties 1. An m-bit register produces an m-sequence of period 2m-1. 2. An m-sequence contains exactly 2(m-1) ones and 2(m-1)-1 zeros. 3. The modulo-2 sum of an m-sequence and another phase (i.e. time-delayed version) of the same sequence yields yet a third phase of the sequence. 3a. (A corollary of 3.) Each stage of an m-sequence generator runs through some phase of the sequence. (While this is obvious with a Fibonacci LFSR, it may not be with a Galois LFSR.) 4. A sliding window of length m, passed along an m-sequence for 2m-1 positions, will span every possible mbit number, except all zeros, once and only once. That is, every state of an m-bit state register will be encountered, with the exception of all zeros. 5. Define a run of length r to be a sequence of r consecutive identical numbers, bracketed by non-equal numbers. Then in any m-sequence there are: 1 run of ones of length m. 1 run of zeros of length m-1. 1 run of ones and 1 run of zeros, each of length m-2. 2 runs of ones and 2 runs of zeros, each of length m-3. 4 runs of ones and 4 runs of zeros, each of length m-4. … 2m-3 runs of ones and 2m-3 runs of zeros, each of length 1. 6. If an m-sequence is mapped to an analog time-varying waveform, by mapping each binary zero to 1 and each binary one to -1, then the autocorrelation function for the resulting waveform will be unity for zero delay, and -1/(2m-1) for any delay greater that one bit, either positive or negative in time. The shape of the autocorrelation function between -1 bit and +1 bit will be triangular, centered around time 0. That is, the function will rise linearly from time = -(one-bit) to time 0, and then decline linearly from time 0 to time = +(one-bit). Florida Institute of technologies Page 6 Circular autocorrelation of PN sequence PN sequence of length N: xn Circular autocorrelation: 1 R p v N N xnxmod( n v, N ) n 1 For PN sequences 1 R p v 1 N Note: PN sequences are practically orthogonal to their delayed versions ,v 0 ,v 0 Consider N=15 sequence in the attached spreadsheet Florida Institute of technologies Page 7 Use of CDMA in cellular systems Coding different on UL and DL DL – 2 levels of coding o Within each cell – users separated by Walsh codes o Cells – separated by different PN codes CDMA DL On the UL o Users separated by PN codes Additional level of coding usually added for encryption purposes Note: WC used to separate synchronized transmissions, PN used to separate asynchronous transmission CDMA UL Florida Institute of technologies Page 8