ndi- cator to select the PUSCH transmit precoder from a set of codebooks. For non-codebook- based transmission, the UE determines its PUSCH precoder based on (wideband) SRS resource indication (SRI) field from DCI. A closed-loop DM-RS-based spatial multiplexing is supported for PUSCH with up to four transmission layers for SU-MIMO with CP-OFDM waveform. Uplink SU-MIMO uses one codeword. Support of DFT-S-OFDM in the uplink is optional, and when transform precoding is used, only a single MIMO transmission layer is supported. As shown in Fig. 4.87, the uplink physical layer processing of transport channels consists of the following stages: Transport block CRC attachment, where TBSs larger than 3824 use 24-bit CRC and other TBSs utilize 16-bit CRC, followed by LDPC base graph selection Code block segmentation and code block CRC attachment, which always uses 24-bit CRC Channel coding which makes use of LDPC coding (base graph 1 or 2) Rate matching and code block concatenation followed by data and control multiplexing Scrambling and modulation where any of the modulation schemes may be used, that is, 2-BPSK (with transform precoding only), QPSK, 16QAM, 64QAM, or 256QAM Layer mapping Transform precoding (enabled/disabled by configuration) and precoding Mapping to assigned resources and antenna ports The UE transmits at least one symbol with DM-RS on each layer in which PUSCH is trans- mitted. The number of DM-RS symbols and resource element mapping is configured via RRC signaling. The PT-RS may be transmitted on additional symbols to assist the gNB receiver with phase tracking [11]. Following the above summary, let us discuss the physical layer processing of the UL-SCH in more detail. The CRC is calculated over the entire transport block that is constructed Chapter 4 PUSCH data (transport block) ao, a b(cw) Transport block CRC attachment Scrambling TS 38.212 Section 6.2.1 TS 38.211 Section 6.3.1.1 bo b bB-1 LDPC base graph selection Modulation TS 38.212 Section 6.2.2 TS 38.211 Section 6.3.1.2 Code block segmentation and