550 likes | 693 Views
CDMA Technology Overview. Lesson 3 - Forward Traffic Channels. CDMA Forward Traffic Channels. CDMA Cell Site. Pilot. Forward Traffic Channel. Sync. S. Forward Traffic Channel. Paging. Forward Traffic Channel.
E N D
CDMA Technology Overview Lesson 3 - Forward Traffic Channels
CDMA Forward Traffic Channels CDMA Cell Site Pilot Forward Traffic Channel Sync S Forward Traffic Channel Paging Forward Traffic Channel • Used for the transmission of user and signaling information to a specific mobile station during a call • Maximum number of traffic channels: 64 minus one Pilot channel, one Sync channel, and 1 to 7 Paging channels • This leaves each CDMA frequency with at least 55 traffic channels • Unused paging channels can provide up to 6 additional channels • Realistic loading will typically be about 17 subscribers when using the 13 kb vocoder (22 when using the 8 kb vocoder)
Code Channels in the Forward Direction Pilot Walsh 0 Paging Walsh 1 Walsh 6 Walsh 11 Walsh 19 Walsh 20 Sync Walsh 32 Walsh 37 Walsh 41 Walsh 42 Walsh 55 Walsh 56 Walsh 60 • PILOT: WALSH CODE 0 The Pilot is a “structural beacon” which does not contain a character stream. It is a timing source used in system acquisition and as a measurement device during handoffs • SYNC: WALSH CODE 32 This carries a data stream of system identification and parameter information used by mobiles during system acquisition • PAGING: WALSH CODES 1 up to 7 There can be from one to seven paging channels as determined by capacity needs. They carry pages, system parameters information, and call setup orders • TRAFFIC: any remaining WALSH codes The traffic channels are assigned to individual users to carry call traffic. All remaining Walsh codes are available, subject to overall capacity limited by noise
Coding Process in the Forward Direction MTX BSC BTS (1 sector) Short PN Code PN Offset 246 I Q Walsh #0 Pilot S Trans- mitter, Sector X Walsh #32 Sync FEC Walsh #1 Paging FEC Walsh #12 Vocoder FEC Walsh #23 Vocoder FEC Walsh #27 Vocoder FEC Walsh #44 Vocoder FEC more more more A Forward Channel is identified by: • its CDMA RFcarrierFrequency • the unique ShortCode PN Offsetof the sector • the uniqueWalsh Codeof the user CDMA Frequency
Digital Stream 0 (DS0) Analog Voice Signal Sampling Quantizing 8 15 3 1 3 16 4 4 8 16 16 15 15 14 13 12 t t 11 10 8 8 t 9 8 7 6 5 4 4 4 3 3 3 2 1 1 0 64 kbs Signal Regeneration 8 15 3 1 3 16 4 4 8 16 15 14 13 12 11 10 t 9 8 7 6 5 4 3 2 1 0
Variable Rate Vocoding & Multiplexing(Traffic Channels Only) DSP QCELP VOCODER 20ms Sample Codebook Pitch Filter Feed- back Coded Result Formant Filter bits Rate Set 2 Frame Sizes 288 Full Rate Frame 144 1/2 Rate Frame 72 1/4 Rt. 36 1/8 Frame Contents: can be a mixture of Voice Signaling Secondary • Vocoders compress speech, reduce bit rate • CDMA uses a superior Variable Rate Vocoder • full rate during speech • low rates in speech pauses • increased capacity • more natural sound • Voice, signaling, and user secondary data may be mixed in CDMA frames
Converting Bits into Symbols Bits Forward Error Correction Symbols • The bits in a 20 ms traffic frame may include one or more of the following • voice information (from the vocoder) • signaling information • secondary traffic information • When Forward Error Correction algorithms are applied to these information bits, the resulting 0s and 1s are called symbols • bits and symbols are related in a complex many-to-many fashion the information in one bit is distributed among many symbols, and one symbol carries some of the information of many bits • all forward traffic frames contain 384 symbols • all reverse traffic frames contain 576 symbols
Spreading Symbols into Chips Symbols Coding and Spreading Chips Symbols are converted into special 64-chip patterns for transmission • there are 64 such patterns called “Walsh codes” • in the forward link, just one of these patterns is assigned to each user’s stream of symbols (code channel) • each ‘0’ symbol is replaced by the selected pattern (Walsh code) • each ‘1’ symbol is replaced by the logical negation of the selected pattern • in the reverse link, all the 64 patterns (but not their logical negations) are used in every code channel • each group of six symbols is interpreted as a binary value in the 0-63 range and replaced by the corresponding Walsh code
Reverting the Process Bits Viterbi Decoder Symbols Despreading (integraton) Chips To revert the process, first the symbols are recovered as follows • In the forward direction, the mobile station correlates the received signal with the selected Walsh code pattern (integrating the power over 64 chips) • In the reverse direction, the BTS matches the received signal with each possible Walsh code and selects the pattern that produces the highest degree of correlation • When all the symbols for a 20 millisecond frame have been recovered, the Viterbi decoder is used to guess the block of bits (frame) that most probably corresponds to this block of symbols • Then the CRC of this frame is calculated to determine if the guess was successful; if not, the frame is discarded
Forward Traffic Channels: Vocoding PCM Voice 20 ms slices (1280 bits) Variable Rate Voice Coding 64 kbps From MTX Vocoder Processing BSC Convolutional Encoding Code Symbol Repetition To the Convolutional Encoder Add CRC Add 8 bit Encoder Tail (Symbol Puncturing) Block Interleaving Data Scrambling BTS Power Control Subchannel Orthogonal Spreading Quadrature Spreading Baseband Filtering Baseband Traffic to RF Section • Vocoding reduces the bit rate needed to represent speech • Output is 20 ms frames at fixed rates: Full Rate, 1/2 Rate , 1/4 Rate , 1/8 Rate, & Blank • CRC is added to all the frames for the 13 kb vocoder, but only to the Full and 1/2 rate frames for the 8 kb vocoder • CRC is not added to the lower rate frames in the 8 kb vocoder but that is ok because they consist mostly of background noise and have a higher processing gain • Current vocoder rates are 13 kb, 8 kb, and 8 k EVRC (Enhanced Variable Rate Coder)
Variable Rate Vocoder A-to-D C O N V E R T E R V O C O D E R “Codebook” Instruction (< 64 kbps) 64 kbps • Speech coding algorithms (digital compression) are necessary to increase cellular system capacity • Coding must also ensure reasonable fidelity, that is, a minimum level of quality as perceived by the user • Coding can be performed in a variety of ways (for example, waveform, time or frequency domain) • Vocoders transmit parameters which control “reproduction” of voice instead of the explicit, point-by-point waveform description
Forward Traffic Channel Generation bits symbols chips CHANNEL ELEMENT Power Control Bit IPN Walsh Function 9600bps 4800 bps 2400 bps 1200 bps or 14400 bps 7200 bps 3600 bps 1800 bps (traffic frames) Baseband Filter R = 1/2, K = 9 Convolutional Encoding & Repetition M U X Scrambling Block Interleaving 19.2 Ksps Gain Control 1.2288 Mcps Baseband Filter 28.8 Ksps 19.2 Ksps Symbol Puncturing (13 Kb only) QPN 19.2 Ksps 800 Hz 1.2288 Mcps User Address Mask (ESN-Based) Long PN Code Generator Decimator Decimator
Forward Traffic Channel Frame Structure Rate Set Transmission Rate Number of Bits per Frame Total Reserved Information CRC Tail Bits 1 9600 192 — 172 12 8 4800 96 — 80 8 8 2400 48 — 40 — 8 1200 24 — 16 — 8 2 14400 288 1 267 12 8 7200 144 1 125 10 8 3600 72 1 55 8 8 1800 36 1 21 6 8
Convolutional Encoding andSymbol Repetition PCM Voice 9.6 kbps 4.8 kbps 2.4 kbps 1.2 Kbps 19.2 ksps 9.6 ksps 4.8 ksps 2.4 ksps 19.2 ksps to Block Interleaver 8 kb Vocoder Processing Variable Rate Output from the Vocoder Convolutional Encoder R=1/2 K=9 Symbol Repetition bits code symbols modulation symbols Convolutional Encoding Code Symbol Repetition 28.8 ksps to Symbol Puncturing 14.4 kbps 7.2 kbps 3.6 kbps 1.8 kbps 28.8 ksps 14.4 ksps 7.2 ksps 3.6 ksps (Symbol Puncturing) 13 kb Block Interleaving Data Scrambling Power Control Subchannel Orthogonal Spreading Quadrature Spreading Baseband Filtering Baseband Traffic to RF Section • Convolutional encoding • Is a means of error detection/correction • Results in 2 code symbols (or more, depending on the “R” constant) output for each bit input • Symbol repetition maintains a constant 19.2 Ksps output to be fed into the block interleaver • Also allows for reduction in transmit power • Reduces overall noise and increases capacity
A Very Simple Convolutional Encoder + 1011000 +
A Very Simple Convolutional Encoder + + 0 10110 0 0 1
A Very Simple Convolutional Encoder + 1011 0 0 + 01 0 11
A Very Simple Convolutional Encoder + 101 1 0 + 011 00 111
A Very Simple Convolutional Encoder + 10 1 1 + 1101 000 1110
A Very Simple Convolutional Encoder + 1 0 1 + 11010 1000 11100
Rate 1/2, k=9 Convolutional Encoding c g 0 0 Code Symbol Output Data Bit Input 1 2 3 4 5 6 7 8 (Data Bit is discarded) Code Symbol Output g 1 c 1 • Symbols generated as the information bits transit through the encoder, are related to all the bits currently in the register • Each information bit contributes to multiple generated symbols • This pattern of inter-relationships helps detect and correct errors • The length of shift register plus 1 is called the “constraint length” of the convolutional encoder (K=9 in this case) • The longer the register, the better this scheme can correct bursty errors • Reduces power required to achieve same accuracy as without coding • Here, two symbols are generated for every bit input (Rate 1/2)
Symbol Repetition and Power Reduction MATH HAMMER Data Rate (bps) Energy per Modulation Symbol Full Energy 14000 / 9600 E =E /2 s b 72000 / 4800 E =E /4 1/2 Energy s b E =E /8 3600 / 2400 1/4 Energy s b E =E /16 1800 / 1200 1/8 Energy s b • Symbol repetition provides a constant rate to the block interleaver • Lower rates symbols are sent at reduced power levels • The energy per bit across all rates is identical when integrated • Overall signal power requirement (thus noise) is reduced
Symbol PuncturingRate Set 2 (13 kbps Vocoder) PCM Voice From R=1/2 K=9 Convolutional Encoder Vocoder Processing Symbol Repetition Symbol Puncturing to the Block Interleaver Convolutional Encoding 28.8 ksps 19.2 Ksps 28.8 ksps 14.4 ksps 7.2 ksps 3.6 ksps Code Symbol Repetition (Symbol Puncturing) Block Interleaving Data Scrambling Power Control Subchannel Orthogonal Spreading Quadrature Spreading Baseband Filtering Baseband Traffic to RF Section • Symbol repetition maintains a constant 28.8 ksps output to puncturing section • Symbol puncturing deletes 2 of every 6 inputs based on a six-bit pattern • Unrepeated symbols for 28.8 ksps frames are also deleted Convolutional decoder in mobile station will correct these purposeful errors • Puncturing provides a constant 19.2 Ksps input to interleaver just like in rate set 1 This allows all other functions to remain exactly the same
Block Interleaving PCM Voice Input Array (Normal Sequence) 24 X 16 Output Array (Reordered Sequence) 24 X 16 Vocoder Processing Convolutional Encoding 19.2 ksps From Coding & Symbol Repetition To Data Scrambling Function Code Symbol Repetition (Symbol Puncturing) Block Interleaving Data Scrambling Power Control Subchannel Orthogonal Spreading Quadrature Spreading Baseband Filtering Baseband Traffic to RF Section • 20 ms symbol blocks are sequentially reordered • Combats the effects of fast fading • Separates repeated symbols at 4800 bps and below • Improves survival rate of symbol data • Spreads the effect of bursty interference
9600 bps Block Interleaver (Input Array) • The 384 modulation symbolsin a frame are input into a 24 by 16block interleaver array (read down by columns, from left to right) • The array represents a 20 ms interval worth of information
9600 bps Block Interleaver (Output Array) • This 24 by 16 array (read down by columns, from left to right) indicates the order in which the symbols are output from the block interleaver • The effect of bursty errors during transmission is minimized (the 2k contiguous symbols containing the information to restore one data bit have been separated) Assume that a burst of noise damages all these bits
9600 bps De-Interleaving Notice how the effect of the burst of noise is spread over the transmitted block
Putting it All Together: CDMA Code Channels BTS FORWARD CHANNELS • The three spreading codes are used in different ways to create the forward and reverse links • A forward channel exists by having a specific Walsh Code assigned to the user, and a specific PN offset for the sector • A reverse channel exists because the mobile uses a specific offset of the Long PN sequence LONG CODE: Data Scrambling WALSH CODE: Individual User SHORT PN OFFSET: Sector REVERSE CHANNELS WALSH CODES: used as symbols for robustness SHORT PN: used at 0 offset for tracking LONG CODE OFFSET: individual handset
Pilot Channel • Used by the mobile station for initial system acquisition • Transmitted constantly by the base station • The same PN sequences are shared by all base stations • Each base station is differentiated by a phase offset • Provides tracking of • Timing reference • Phase reference • Separation by phase provides for extremely high reusewithin one CDMA channel frequency • Acquisition by mobile stations is enhanced by • Short duration of Pilot PN sequence • Uncoded nature of pilot signal • Facilitates mobile station-directed handoffs • Used to identify handoff candidates • Key factor in performing soft handoffs
Pilot Channel Generation IPN Walsh Function 0 Baseband Filter 1.2288 Mcps Pilot Channel (All 0’s) Gain Control Baseband Filter QPN • The Walsh function zero spreading sequence is applied to the Pilot • The use of short PN sequence offsets allows for up to 512 distinct Pilots per CDMA channel • The PN offset index value (0-511 inclusive) for a given pilot PN sequence is multiplied by 64 to determine the actual offset • Example: 15 (offset index) x 64 = 960 PN chips • Result: The start of the pilot PN sequence will be delayed960 chips x 813.8 nanoseconds per chip = 781.25 µs • The quadrature spreading and baseband filtering (not shown), which are performed as with all the other forward and reverse code channels, will be discussed later
Walsh Code Channel Generation Wn Wn W2 n = Wn Wn 0 0 0 0 0 1 0 1 0 0 1 1 0 1 1 0 0 0 0 1 W2 = W4 = 1 1 1 1 1 0 1 0 1 1 0 0 1 0 0 1 1 1 1 0 W1 =1 W2 = W4 = W1 = 0
CDMA “Short” and “Long” PN Codes CDMA uses three PN code sequences: two “short” and one “long” • The two short PN codes (called “I” and “Q”) are used for quadrature spreading to differentiate between CDMA partitions (sectors/cells) in the forward direction • The two short codes are generated by 15-bit PN code generators. The generated strings are 215 -1 bits long plus one zero inserted following the longest string of generated zeroes (32,768); and their cycle period is 26.666... milliseconds (or 75 times every 2 seconds). • The long PN code is used for spreading and data scrambling/randomization, and to differentiate among mobile stations in the reverse direction. • The long code is generated by a 42-bit PN code generator. The generated string is 242 -1 with no zero inserted (about 4.4 trillion) bits long; and its cycle period is approximately 41 days, 10 hours, 12 minutes and 19.4 seconds. • The three CDMA PN codes are synchronized to the beginning of system time (January 6, 1980 at 00:00:00 hours)
Pilot Channel Acquisition PILOT CHANNEL (Walsh Code 0) 00...01 00...01 00...01 00...01 00...01 00...01 00...01 • The mobile station starts generating the I and Q PN short sequences by itself and correlating them with the received composite signal at every possible offset • In less that 15 seconds (typically 2 to 4 seconds) all possibilities (32,768) are checked • The mobile station remembers the offsets for which it gets the best correlation (where the Ec/I0 is the best) • The mobile station locks on the best pilot (at the offset that results in the best Ec/I0), and identifies the pattern defining the start of the short sequences (a ‘1’ that follows fifteen consecutive ‘0’s) • Now the mobile station is ready to start de-correlating with Walsh code 32 to extract the Sync Channel (next section)
Sync Channel (Acquired Pilot) Sync Channel • The Pilot channel carries no data, therefore it has no frames.The Sync channel uses 26 2/3 ms frames.All other forward and reverse code channels use 20 ms frames. • Used to provide essential system parameters • Used during system acquisition stage • The bit rate is 1200 bps • The Sync channel has a frame duration of 26 2/3 ms • this frame duration matches the period of repetition of the PN Short Sequences • this simplifies the acquisition of the Sync Channel once the Pilot Channel has been acquired • The Mobile Station re-synchronizes at the end of every call
Frames and Messages Logical unit of transmission Fixed length no need for length info Each frame includes one or more overhead bits in addition to the “payload” of information bits these overhead bits define the structure of the frame Logical unit of information Variable length must include length info A message is broken into small pieces that can fit in the payload portion of successive frames one frame overhead bit could be used to identify the initial segment of a message MESSAGE + + Sync FRAME 1 0 0 0 + + + + Traffic FRAME FRAME MESSAGE
Sync Channel Generation IPN modulation symbols Walsh Function 32 bits chips Baseband Filter R = 1/2, K = 9 Convolutional Encoding & Repetition Block Interleaving 1200 bps Gain Control 4800 bps 4800 bps 1.2288 Mcps Baseband Filter QPN • There are 32 bits (1200 bps x 0.02666... second) in one Sync Channel frame • The Rate 1/2 convolutional encoder doubles the bit rate, and the resulting 0s and 1s are now called “code symbols” • there are 64 code symbols in a Sync Channel frame • The repetition process doubles the rate again, and each repetition of a code symbol is now called a “modulation symbol” • there are 128 modulation symbols in a Sync Channel frame • Four copies of Walsh code #32 are used to spread each modulation symbol, resulting in a x256 rate increase; the resulting 0s and 1s are now called “chips” • there are 32,768 chips in a Sync Channel frame (1024 chips per original bit)
Sync Channel Block Interleaver(Input Matrix) 1 9 17 25 33 41 49 57 1 9 17 25 33 41 49 57 2 10 18 26 34 42 50 58 2 10 18 26 34 42 50 58 3 11 19 27 35 43 51 59 3 11 19 27 35 43 51 59 4 12 20 28 36 44 52 60 4 12 20 28 36 44 52 60 5 13 21 29 37 45 53 61 5 13 21 29 37 45 53 61 6 14 22 30 38 46 54 62 6 14 22 30 38 46 54 62 7 15 23 31 39 47 55 63 7 15 23 31 39 47 55 63 8 16 24 32 40 48 56 64 8 16 24 32 40 48 56 64
Sync Channel Block Interleaver(Output Matrix) Let’s assume that a burst of noise affects these symbols 1 3 2 4 1 3 2 4 33 35 34 36 33 35 34 36 17 19 18 20 17 19 18 20 49 51 50 52 49 51 50 52 9 11 10 12 9 11 10 12 41 43 42 44 41 43 42 44 25 27 26 28 25 27 26 28 57 59 58 60 57 59 58 60 5 7 6 8 5 7 6 8 37 39 38 40 37 39 38 40 21 23 22 24 21 23 22 24 53 55 54 56 53 55 54 56 13 15 14 16 13 15 14 16 45 47 46 48 45 47 46 48 29 31 30 32 29 31 30 32 61 63 62 64 61 63 62 64
Sync Channel Block Interleaver(Original Order Restored) 1 9 17 25 33 41 49 57 1 9 17 25 33 41 49 57 2 10 18 26 34 42 50 58 2 10 18 26 34 42 50 58 3 11 19 27 35 43 51 59 3 11 19 27 35 43 51 59 4 12 20 28 36 44 52 60 4 12 20 28 36 44 52 60 5 13 21 29 37 45 53 61 5 13 21 29 37 45 53 61 6 14 22 30 38 46 54 62 6 14 22 30 38 46 54 62 7 15 23 31 39 47 55 63 7 15 23 31 39 47 55 63 8 16 24 32 40 48 56 64 8 16 24 32 40 48 56 64
Sync Channel Structure 1200 bps 80 ms, 96 bits Sync Channel Superframe Sync Channel Superframe 26.67 ms 32 bits Sync Channel Frame SOM Sync Channel Frame Body 31 bits 1 0 0 0 0 0 Sync Channel Message Capsule (93 x Ns bits) Padding Sync Channel Message as required Sync Channel Message (8 x MSG_LENGTH) Message Body CRC Ns = Number of Sync Channel Superframes needed for message transmission MSG_LENGTH 8 bits 2-1146 bits 30 bits
Sync Channel Message Body Format Length (bits) Field MSG_TYPE (‘00000001’) 8 P_REV 8 MIN_PREV 8 SID 15 NID 16 PILOT_PN 9 LC_STATE 42 SYS_TIME 36 LP_SEC 8 LTM_OFF 6 DAYLT 1 PRAT 2 CDMA_FREQ 11 Total : 170
Sync Message Parameters • Message Type (MSG_TYPE)– Identifies this message and determines its structure (set to the fixed value of ‘00000001’) • Protocol Revision Level (P_REV) – Shall be set to ‘00000001’ • Minimum Protocol Revision Level (MIN_P_REV) – 8-bit unsigned integer identifying the minimum protocol revision level required to operate on this system. Only personal stations that support revision numbers greater than or equal to this field can access the system • System ID (SID)– 16-bit unsigned integer identifying the system • Network ID (NID) – 16-bit unsigned integer identifying the network within the system (defined by the owner of the SID) • Pilot PN Sequence Offset Index (PILOT_PN)– Set to the pilot PN offset for the base station (in units of 64 chips), assigned by the network planner • Long Code State (LC_STATE)– Provides the mobile station with the base station long code state at the time given by the SYS_TIME field, generated dynamically • System Time (SYS_TIME)– GPS system-wide time as 320 ms after the end of the last superframe containing any part of this message, minus the pilot PN offset, in units of 80 ms, generated dynamically
Sync Channel Message Parameters (cont) • Leap Seconds(LP_SEC) – Number of leap seconds that have occurred since the start of system time (January 6, 1980 at 00:00:00 hours) as given in the SYS_TIME field, generated dynamically • Local Time Offset (LTM_OFF)– Two’s complement offset of local time from system time in units of 30 minutes, generated dynamically • Current local = SYS_TIME – LP_SEC + LTM_OFF • Daylight savings time indicator (DAYLT)– Determined by the network planner • 1 if daylight savings in effect in this base station • 0 otherwise • Paging Channel Data Rate (PRAT)– The data rate of the paging channel for this system, determined by the network planner • 00 if 9600 bps • 01 if 4800 bps • CDMA Frequency Assignment(CDMA_FREQ)– The CDMA channel number, in the specified CDMA band class, corresponding to the frequency assignment for the CDMA Channel containing a Primary Paging Channel, determined by the network planner
Paging Channels Used by the base station to transmit system overhead information and mobile station-specific messages. • Up to seven paging channels can be supported on a single CDMA frequency assignment • Channel 1 (Walsh function 1) is the Primary Paging Channel • Additional Paging Channels use Walsh functions 2 through 7 • Unused paging channels can be used as Forward Traffic Channels • Two rates are supported: 9600 and 4800 bps (PRAT parameter in the Sync Channel Message) • A single 9600 bps Paging Channel can support about 180 pages per second