We throw a lot of terms around when we discuss LTE data transmissions, especially when we get into some of the details of sending data over the PDSCH using multiple antenna techniques. We describe transport blocks as holding the data we’re trying to send, but how do they relate to codewords? Assigning bits to different layers can be used to improve reliability or throughput, but are layers the same as antenna ports? Let’s have a closer look at what’s going on down in the Physical (PHY) Layer.
User data and signaling messages are processed by the PDCP, RLC and MAC layers before being passed down to the PHY layer to be sent over the air. A lot happens to a data packet before PHY gets it, but for the moment, let’s just treat the MAC PDU (Protocol Data Unit) that PHY receives from MAC as “data”. To PHY, it’s just a string of bits anyway. This will be our transport block.
Transport Blocks to Codewords
What does PHY do with a transport block? First, it converts the transport block into a codeword. There are a number of steps involved in this process, depending on the length of the transport block:
- Append a 24 bit checksum (CRC) to the transport block. This CRC is used to determine whether the transmission was successful or not, and triggers Hybrid ARQ to send an ACK or NACK, as appropriate
- Segment the transport block into code blocks. A code block must be between 40 and 6144 bits long. If the transport block is too small, it is padded up to 40 bits; if the TB is too big, it is divided into smaller pieces, each of which gets an additional 24 bit CRC.
- Process each code block with a 1/3 turbo coder
- Reassemble the resulting code blocks into a single codeword
A codeword, then, is essentially a transport block with error protection. Note that a UE may be configured to receive one or two transport blocks (and hence one or two codewords) in a single transmission interval.
Codewords to Layers
PHY then converts each codeword into modulation symbols. For each codeword, PHY must:
- Scramble the contents of each codeword, using a sequence based on the UE’s C-RNTI and the cell’s Physical Cell ID (PCI)
- Convert the bit sequences into the corresponding modulation symbols (using QPSK, 16QAM or 64QAM)
- Assign the modulation symbols to one or more layers, depending on the specific transmission scheme being used
In the case of a single transmit antenna, the last step is pretty simple: the contents of the codeword are mapped to a single layer. For transmit diversity, it’s almost as easy: the symbols from the codeword are distributed evenly across the 2 or 4 layers in a round-robin fashion.
In spatial multiplexing situations, things get a little more complicated, since one or two codewords may be distributed across 1, 2, 3 or 4 layers. In brief, here’s how the mapping is handled:
The number of layers used in any particular transmission depends (at least in part) on the Rank Indication (RI) feedback from the UE, which identifies how many layers the UE can discern.
Layers to Antenna Ports
The final steps apply any required precoding adjustments and assign the modulation symbols to the physical resources:
- Apply the required precoding factors to the modulation symbols in each layer
- Map the precoded symbols to the appropriate antenna ports
- Assign the modulation symbols to be transmitted on each antenna port to specific resource elements (the subcarriers and symbols within the resource blocks)
- Generate the final time-domain OFDM signal for each antenna port
Note that the number of layers is always less than or equal to the number of antenna ports (transmit antennas). If there’s only one antenna port, then it carries just a single layer. In multiple (2 or 4) antenna situations, though, each antenna port may end up carrying a complicated combination of the symbols from multiple layers. Check out spec 36.211, section 6.3.4 if you really want to dig into the details.
What’s the answer in a nutshell? One transport block -> one codeword -> one or two layers -> one or more antenna ports. Fortunately, the eNodeB and the UE always know what’s going on, even if I have trouble keeping it all straight sometimes.
Codeword, Layer, And Precoding In LTE
Codeword: codeword represents the user data before it is formatted for transmission. One or two code words, CW0 and CW1, may be used depending on the conditions of the channel and the use case. In the most common case of a single user MIMO (SU-MIMO), two codewords are sent to a single handset UE, but less common for downlink multi-user MIMO (MU-MIMO), each codeword is sent only one UE.
Layer: The term is synonymous with the current. For MIMO, the use of at least two layers. Up to four layers are allowed .The Number is always less than or equal to the number of antennas.
Precoding: Precoding layer modifies signals before transmission. This can be done diversity, spatial multiplexing, or beam direction. MIMO channel conditions may favor one layer (data stream) to another. If the base station (eNB) is given channel (e.g., the information sent back from the UE), the complex may be added to counter the imbalance cross-coupling in the channel. In arrangement 2 * 2, LTE uses a single stop 1 to 3 Precoding, which improves the performance if the channel has not changed too rapidly.
Eigen beamforming: (sometimes known simply as “beamforming”) amends the transmission signals to provide the best transportation to interference and noise ratio (CINR) out of the channel.