A method for a user equipment, UE, apparatus for transmitting uplink control information, UCI, through a physical uplink shared channel, PUSCH assigned by a base station, the method comprising: determining, by the UE, a number of coded UCI symbols per layer (620, 640); and multiplexing the coded UCI symbols with PUSCH data and transmitting, using multiple transmitter antennas, by the UE to the base station, the multiplexed coded UCI symbols and the PUSCH data, through two, three or four spatial layers, wherein the PUSCH data includes two code words, CWs, and each CW is associated with a transport block. TB and each TB is associated with one hybrid automatic repeat request, HARQ, process and one modulation and coding scheme, MCS, wherein each TB has a different MCS, wherein the number of coded UCI symbols Q' in each of the spatial layers of the two CWs, is determined as: Q ′ = min ⌈ O Q m 0 ⋅ R 0 β offset, CW 0 PUSCH + Q m 1 ⋅ R 1 β offset, CW 1 PUSCH 2 ⌉, 4 ⋅ M sc PUSCH = min ⌈ 2 ⋅ O ⋅ β offset, CW 0 PUSCH Q m 0 ⋅ R 0 + Q m 1 ⋅ R 1 ⋅ β offset, CW 0 PUSCH β offset, CW 1 PUSCH ⌉, 4 ⋅ M sc PUSCH where, ┌ ┐ denotes a ceiling function that rounds a number to its next integer, O denotes the number of bits of the UCI, MCS j = Q m j ⋅ R j with Q m j and R j being respectively the modulation order and coding rate for the initial PUSCH transmission of TB j for the respective HARQ process where CW j is transmitted, for j = 0,1, β offset, CW 0 PUSCH and β offset, CW 1 PUSCH denote the offset of the PUSCH in each spatial layer of CW 0 and CW 1, with β offset, CW 0 PUSCH and β offset, CW 1 PUSCH being different from each other, j denotes an index of a TB, and M sc PUSCH denotes a scheduled bandwidth for a PUSCH transmission in a current sub-frame for a TB, wherein the number of coded UCI symbols in each spatial layer of CW 0 and CW 1 is determined based on an average of a total number of coded UCI symbols in each spatial layer corresponding to individual CW 0 and CW 1 and wherein the UCI includes a hybrid automatic repeat request -acknowledgement (610, 630) or a rank indicator. determining, by the UE, a number of coded UCI symbols per layer (620, 640); and multiplexing the coded UCI symbols with PUSCH data and transmitting, using multiple transmitter antennas, by the UE to the base station, the multiplexed coded UCI symbols and the PUSCH data, through two, three or four spatial layers, wherein the PUSCH data includes two code words, CWs, and each CW is associated with a transport block. TB and each TB is associated with one hybrid automatic repeat request, HARQ, process and one modulation and coding scheme, MCS, wherein each TB has a different MCS, wherein the number of coded UCI symbols Q' in each of the spatial layers of the two CWs, is determined as: Q ′ = min ⌈ O Q m 0 ⋅ R 0 β offset, CW 0 PUSCH + Q m 1 ⋅ R 1 β offset, CW 1 PUSCH 2 ⌉, 4 ⋅ M sc PUSCH = min ⌈ 2 ⋅ O ⋅ β offset, CW 0 PUSCH Q m 0 ⋅ R 0 + Q m 1 ⋅ R 1 ⋅ β offset, CW 0 PUSCH β offset, CW 1 PUSCH ⌉, 4 ⋅ M sc PUSCH where, ┌ ┐ denotes a ceiling function that rounds a number to its next integer, O denotes the number of bits of the UCI, MCS j = Q m j ⋅ R j with Q m j and R j being respectively the modulation order and coding rate for the initial PUSCH transmission of TB j for the respective HARQ process where CW j is transmitted, for j = 0,1, β offset, CW 0 PUSCH and β offset, CW 1 PUSCH denote the offset of the PUSCH in each spatial layer of CW 0 and CW 1, with β offset, CW 0 PUSCH and β offset, CW 1 PUSCH being different from each other, j denotes an index of a TB, and M sc PUSCH denotes a scheduled bandwidth for a PUSCH transmission in a current sub-frame for a TB, wherein the number of coded UCI symbols in each spatial layer of CW 0 and CW 1 is determined based on an average of a total number of coded UCI symbols in each spatial layer corresponding to individual CW 0 and CW 1 and wherein the UCI includes a hybrid automatic repeat request -acknowledgement (610, 630) or a rank indicator.