Friday, July 27, 2012

PAGING – PF and PO Calculation - LTE

Paging is indication to UE to establish NAS Procedure basically happens at two occasions
1)      Incoming Call Alert: Means Mobile Terminated Call.
2)      Broadcast Change : E-UTRAN notifies the UEs by means of a Paging message including a SystemInfoModification flag

Paging message will be associated with PF and PO at RE - Grid Level.
Where PF is associated with Corresponding SystemFrame and PO is associated with SubFrame where Paging Message is  Broadcasted.

Then how to Caliculate Paging Frame and Paging Occasion for particular UE:
In caliculation the below factors plays role
·         SFN – System Frame Number
·         DefaultPagingCycle is from SIB2
·         PagingDrx Cycle from S1-Paging Message
·         Ue Id : Received from S1-Paging Message
·         nB : From SIB2

Now Let us Take Example to caliculate Paging Occasion :

In SIB2:
                nB -  T / 4
                DefaultPagingCycle :  64
                From S1-Paging Message:
                PagingDRX : 128
                UeIndex from S1 Paging : UE_ID = 0x0115 = (0000 0001 0001 0101 ) after Removing 6 LSBs which makes (0000 0001 00 = 4)
                The above UeIndex is in general UeIdentity % 1024 which means, results only  occupies 10 Bits Only. So, above we Removed 6 LSbits.

T = Min (PagingDRXCycle, DefaultPagingDrxCycle) = Min ( 128,64) = 64
nB = T/4 = 64/4 = 16
N = min(T,nB) = Min(64, 16) =  16
UE_ID = 4 (From above Steps derived from S1 Paging Message)

SFN mod T= (T div N)*(UE_ID mod N)
RHS => (T Div N) * (UE_ID mod N) = ( 64 Div 16) * ( 4 % 16) = 4 * 4 = 16
LHS => SFN Mod T = SFN Mod 64 = 16

PF values could be any thing  where SFN =  (64 * i ) + 16  (I = 0 to N But SFN <= 1024)
i.e Values PF can  be any of 80, 144, 208, 272, 336, 400, 464, 528, 592, 656, 720, 784, 848, 912, 976, 1040, 1104, 1168.

Now Comes To Paging Ocassion:
Ns: max(1,nB/T) = max (1, 16/64) = 1

i_s = floor(UE_ID/N) mod Ns
ð  i_s = floot(4 / 16) mod 1 = 0

From the below table when i_s == 0 and Ns = 1 => P0 = 9 
PO when i_s=0
PO when i_s=1
PO when i_s=2
PO when i_s=3

So considering current SFN is 100 : for the above UE PF which is mentioned in the series is 144. i.e Paging message can go in SF=144 and SFN=9
Ref : 3GPP 36.304 UE Procedures in Idle Mode. Section 7.1 and 7.2


Purpose : This procedure Used to get N/W Access

In General RACH Procedure is triggered in  5 Cases, but Not to confuse with many things the below ONE is the common case
1)      To get Initial Access  : Which means to register with the network initially this is the first process (After MIB, SIB reading)
Other Cases      
2)      During Hand Over
3)      Radio Link Failure
4)      UL Data Arrival and UL is not in Sync
5)      DL Data Arival and UL is not in Sync.

In Resource Grid Where Does RACH Sits:

                RACH will be present in 6 successive RBs (Resource Blocks) i.e n to n+5
                Which means 12 Subcarries of 15 Khz * 6 = 72 SubCarriers
                But for PRACH preamble each subcarrier space is 1.25 Khz i.e One 15Khz = 12  PRACH SubCarriers
                That makes 12 * 12 * 6 = 864 PRACH SubCarriers
                In these 864 SubCarriers 25 Subcarriers are used as Guard Subcarriers (13 + 12)  which makes 839 Subcarriers.
                This Values makes the Zud-Off Sequence Value.

As we mentioned above RACH occupies n to n+5 RBS. Where Does UE gets this ‘n’ value is from SIB2’s “prach-FreqOffset” value. 

During RACH procedure (Assuming only One UE trying to Access N/w at that moment)
UE Selects RA-RNTI value which ranges from 1 to 10 (For FDD – Based on Which SubFrame UE sending RACH) And with a Random Preamble ( < 64 ).
RAR (Random Access Response) will be received from N/W with Same RA-RNTI value.
Once UE Receives RAR
UE responds with Msg3 (i.e RRCConnectionRequest Message)
N/W responds with Msg4 (i.e ContentionResoultion Message) – Some times N/w piggyBacks RRCConnectionResponse with this ContentionResolution Message.

The above are steps in RACH Procedure.

Now next step is to understand what is ContentionResolution
RACH : Two types of RACH are present
1)      Contention Based
2)      Contention Free

What is Contention-Based : 
The Example Scenario for this is:
Take an example at Airport where all passengers will be switching on UE once they arrive at Airport.  Switching-On means everyone is trying to register with Network and we know that in this process RACH procedure will happen.  This RACH Procedure is happening in Bursted Mode.

Here The preamble Selection happens in Random by UE. So, there are chances that multiple UEs can send RACH Indication with same Preamble ID.  Which Means there is contention for N/W Resources.
As such N/W is not aware of this burst,  N/W responds with RAR with Same Preamble ID.
All UE who receives this RAR Messages assumes that RAR is addressed to them and all UE started sending Msg3 .
Msg3  contains  ReasonForAttach + Ue Identity (which is independent of UEs)
Then N/w Responds for the Msg3 which it Received only and responds with Contention Resolution Message where it will have all 5 Bytes that are sent by UE.
Now  corresponding UE alone responds with Msg5
and other UEs will re-start RACH Procedure.

Contention-Free :  Lets suppose there is RadioLinkFailue during Call and it is not wise to allo UE to select Random Value to get Resources from eNodeB.  So, each eNodeB preserves few Preambles for this. UEs will come to know these set value from SIB2.
                                                                    numberOfRA-Preambles: n52
                                                                        sizeOfRA-PreamblesGroupA: n44

where numberOfRA-Preambles are referring to Contention-Based i.e < 53 and from 53 – 64 , these preambles used by N/W during the scenarios which are mentioned as 2,3,4,5 in first Para. So here 53-64 Preamble values are used only for Contention-Free RACH Procedure.

sizeOfRA-PreamblesGroupA : Contenion Based Preambles Set but who are near to eNodeB ( < 45)
45 – 52 preamble set used for Contention Based but for the UEs who are far from eNodeB

Tuesday, July 17, 2012

Digging into LTE MIB

MIB will be read after UE does the Primay and Secondary synchronization.

MIB transmits for every 10 ms in subframe number ‘0’ and slot 1’s  First 4 OFDM Symbols. 
But new Retransmissions happen where SFN%4 == 0 and in the rest of places it is retransmission.
i.e in given SFN n where (n%4 == 0), same MIB content will be sent in n, n+1, n+2 and n+3 System Frames.

What MIB has RRC Spec :  SystemFrameNumber (8 Bits), PHICH Configuration and DL Bandwidth

PHICH Configuration is required in MIB, this helps UE to caliculate PDCCH symbols to find locate CCE of that UE (Because next step after MIB reading is reading SIB1 reading, to read SIB1 UE should be knowing PDCCH info).

SystemFrameNumber (Except 2 LSB Bits i.e 8 MSB Bits) to find SFN. Being it is only 8 bits worst case UE can read 5 radio frames to get exact SFN  number.

DLBandWidth : Based on this , UE will know the number of RBs and number of CCEs , with which Common  Search Space will be derived. This helps in cornering the CCE related to SIB1 (which is next step).

But as RRC Says, that’s all the information does MIB conveys. 
No, it also gives NumberOfTXAntennas also. Number of DL antenna Ports (not physical antennae). Each antenna port uses one cell specific reference signal, that is used by UE for channel estimation.

MIB Transmission happens as below:
MIB content given by MAC is 24 Bits .
With the 24 Bits + 16 CRC bits are added = 40 Bits
Code Rate applicable = 1/48 which means 40 * 48  = 1920
As the same MIB content is transmissted in 4 Subsequence SystemFrames 1920/4 = 480 bits will be transmitted in each RadioFrame. 
How this 480 ?
MIB Transmission is : In 6 ResourceBlocks , 4 OFDM Symbols of Slot1 of Subframe 0
i.e Each RB 12*4 = 48 Res – 8 Res (towards Referece Signals) = 40 REs are left for MIB content per RB
for 6 RBs = 40 * 6 = 240 Res
Being MIB is transmitted with QPSK , 1 RE can carry 2 bits of Data
i.e 240 * 2 = 480
 Note: 6 RBs correspond to the minimum DL BW supported by LTE, which UE assumes when it first receives BCH. After decoding MIB it comes to know of the actual DL BW used by the cell and will adjust its receiver BW accordingly                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
Next How UE understand TX-Antennas Ports (as that is not part of MIB content) :
MIB has CRC which gets scrambled with one of 3 sequences which represents (One, Two OR Four Anttenas). UE when it received it tries to decode with all three based on CRC check UE understands what is TXAntennas.

PBCH can use single antenna or transmit diversity transmission modes. UE blindly detects number of antenna ports used for PBCH using CRC scrambling sequence. From this UE determines number of cell specific reference signals configured in the cell. If cell is configured with 2 antenna ports, SFBC transmit diversity scheme is used for BCH, PCH and L1/L2 Control signalling. If 4 antenna ports are detected, SFBC/FSTD transmit diversity is used for BCH, PCH and L1/L2 control signalling.