5G NR Physical Uplink Shared Channel (PUSCH)
From the series: 5G Tutorial
Learn about the physical uplink shared channel (PUSCH) and its processing chain, which includes elements already found in the downlink shared channel chain including LDPC coding, modulation schemes, layer mapping, and the two types of PUSCH mapping. The video walks through the significant differences that differentiate the uplink shared channel from the downlink shared channel: the number of layers is limited to 4, there is the possibility of using the optional transform precoding, and MIMO precoding is specified explicitly. The video outlines the two possible types of MIMO precoding: codebook-based precoding and non-codebook-based precoding.
Published: 23 May 2019
This is a new episode in our series "5G Explained." In this video, we discuss uplink data transmission in 5G New Radio, where we look at the uplink shared channel chain, which includes LDPC coding; the physical uplink shared channel chain, including the optional transform precoding; and the different types of PDSCH mapping. The uplink shared channel, or UL-SCH, is the channel that carries user data. It has a structure very similar to the downlink shared channel, with CRC, code block segmentation, the use of LDPC, a key difference with LTE, and rate matching.
The output of a coding chain is a codeword. Contrary to the downlink shared channel, it is limited to four layers, which means that uplink transmissions always use a single codeword. The coded data is then mapped to the physical uplink shared channel, or PUSCH. Here you can see how every stage of the uplink shared channel processing is mapped to functions in MathWorks 5G Toolbox. You can recognize CRC encoding, code block segmentation, LDPC coding, and rate matching.
Here again, the chain is similar to the downlink chain, with two notable differences. The first one is the presence of transform precoding, a DFT operation which is what turns OFDM modulation into single carrier OFDM or SC-OFDM, sometimes known by another name, DFT spread OFDM, or DFT-S-OFDM. Transform precoding is optional, which means that the uplink supports both regular OFDM and SC-OFDM.
The second difference is that precoding is specified on the uplink, and we will see it can be of two types. I just mentioned transform precoding is an optional step. SC-FDMA provides lower PAPR, which means that less backoff is needed on the power amplifier. This helps with UEs that are in larger cells or have limited power.
Modulation schemes in the OFDM case are the same as for the downlink, ranging from QPSK to 256QAM. When transform recording is enabled, an additional modulation scheme. Pi/2-BPSK is also available to help with very low SNR transmission in a large cell or with low power.
Layer mapping on the uplink uses the same mechanism as on the downlink, a mechanism that is discussed in another episode of this "5G Explained" series, with one big difference. There can be a maximum of four layers. For that reason, the uplink always includes a single codeword. This single codeword is mapped to n layers, with n between 1 and 4, by mapping input blocks of n input bits to n layers, as shown here.
Precoding is the operation mapping layers' two antenna ports. As mentioned earlier, there are two precoding modes, codebook-based and non-codebook-based precoding. For non-codebook-based precoding, the UE determines the precoding matrix based on measurements it performs on downlink signals, typically the channel state information reference signals.
For codebook-based precoding, the UE simply applies the precoding matrix specified by the gNodeB. Here we have a closer look at the non-codebook-based precoding scheme. This is the mode where the UE makes its own decision about which precoding matrix to use. As just mentioned, the UE determines a suitable precoding matrix from CSI-RS measurements. It then applies the proposed precoding matrix to the SRS, or sounding reference signal. The gNodeB then informs the UE of which subset of the beamforming vectors it can use.
Finally, the UE can apply the selected beamforming vectors to PUSCH transmission. In summary, in that mode, while the UE does propose a precoding matrix, the gNodeB can still veto some of the beamforming vectors, which would reduce the number of layers for transmission. For codebook-based precoding, the gNodeB determines the precoding matrix, based either on downlink measurements for TDD, or an uplink measurement of sounding reference signals.
It then sends the precoding information to the UE in the downlink control message for uplink. And the UE simply looks up the matrix in a series of tables. There are different tables for different number of layers, as well as for transmission with or without transform precoding. The whole process of channel sounding and precoding is described in detail in another episode of this "5G Explained" video series.
PUSCH symbols are mapped to the resource grid using one of two mapping types, A or B. These are the same mapping types as for on the downlink. Mapping A is meant for allocations that start at the beginning of the slot. The demodulation reference signal is then mapped to symbol 2 or 3. Mapping type B is meant for allocations that start partway through the slot, in which case the DM-RS is mapped to the first symbol of the allocation.
This concludes this episode of the "5G Explained" video series on uplink data transmission.