ebook-based precoding relies on channel reciprocity and assumes that the device can acquire accurate knowledge of the uplink channel based on downlink measure- ments. Note that there are no restrictions on the selection of precoder by the UE. Each col- umn of a precoding matrix defines a digital beam for the corresponding layer. Therefore, selection of precoder for each layer can be perceived as selection of different beam direc- tions, where each beam corresponds to one possible layer. It must be noted that the UE pre- coder selection is typically done based on downlink measurements, which may not be necessarily the best precoder from network point of view. As a result, the NR non- codebook-based precoding includes an additional step where the network can modify the device-selected precoder by removing some of the beams or equivalently some columns from the selected precoder [6,9,14]. As we mentioned earlier, codebook-based and non-codebook-based transmission modes are supported for PUSCH transmission. The UE will be configured with codebook-based trans- mission, when the RRC parameter txConfig in pusch-Config is set to "codebook", and it will be configured with non-codebook-based transmission, when the RRC parameter txConfig is set to "nonCodebook". If the RRC parameter txConfig is not provided, the PUSCH transmission will be based on a single-antenna port, triggered by DCI format 0_0. For codebook-based transmission, the UE determines the transmission precoder based on the information obtained from the SRI, TPMI, and the transmission rank, where the SRI, TPMI, and the transmission rank are given by the corresponding fields of the DCI. The TPMI is used to identify the preferred precoder over the SRS ports in the selected SRS resource by the SRI when single or multiple SRS resources are configured. Note that the indicated SRI in nth slot is associated with the most recent transmission of SRS resource identified by the SRI, where the SRS resource is prior to the PDCCH carrying the SRI. In codebook-based transmiss