-
2022-04-05 12:44:48
PUSCH 时间域重复类型 A 和重复类型 B 是 PUSCH时间域的两种资源分配方式,细节见 TS 38.214 R17 clause 6.1.2。
UE如何使用资源分配参数?
PUSCH 重复类型 A 和 PUSCH 重复类型 B在时间域的分配方式由以下参数决定:
- 时隙偏移量 K 2 K_2 K2;
- 相对于时隙(slot)起点的起始符号 (symbol) S S S;
- 从 S S S 开始,分配给 PUSCH 的连续的符号数 L L L;
- 映射类型(mapping Type A/B)
- 重复次数 K K K;
- 对应传输块大小(TBS, Transblock Size )的时隙数目 N N N。
这里 K 2 K_2 K2 决定所分配的PUSCH 起始的时隙, N N N 和 K K K 决定从起始时隙开始分配的时隙资源, S S S 和 L L L 决定 相对时隙起点的OFDM 符号的起点和符号长度,映射类型A和B决定不同的分配结果。
起始时隙
UE发送PUSCH的起始时隙 K s K_s Ks 由 K 2 K_2 K2 决定。
(1) 如果 UE 被配置参数 ca-SlotOffset (载波聚合时隙偏移), K s = ⌊ n ⋅ 2 μ P U S C H 2 μ P D C C H ⌋ + K 2 + ⌊ ( N s l o t , o f f s e t , P D C C H C A 2 μ o f f s e t , P D C C H − N s l o t , o f f s e t , P U S C H C A 2 μ o f f s e t , P U S C H ) ⋅ 2 μ P U S C H ⌋ K_s=\left\lfloor n\cdot{2^{\mu_{PUSCH}}\over 2^{\mu_{PDCCH}}}\right\rfloor +K_2+\left\lfloor \left({N_{slot,offset,PDCCH}^{CA}\over 2^{\mu_{offset ,PDCCH}}}-{N_{slot,offset,PUSCH}^{CA}\over 2^{\mu_{offset,PUSCH}}}\right)\cdot 2^{\mu_{PUSCH}}\right\rfloor Ks=⌊n⋅2μPDCCH2μPUSCH⌋+K2+⌊(2μoffset,PDCCHNslot,offset,PDCCHCA−2μoffset,PUSCHNslot,offset,PUSCHCA)⋅2μPUSCH⌋ 这里 n n n 是 调度 DCI 的时隙, μ P U S C H \mu_{PUSCH} μPUSCH 和 μ P D C C H \mu_{PDCCH} μPDCCH 分别是 PUSCH 和 PDCCH 的子载波间隔配置参数 ( μ = { 0 , 1 , ⋯ , 5 } \mu=\{0, 1,\cdots, 5\} μ={0,1,⋯,5}), N s l o t , o f f s e t , P D C C H C A N_{slot,offset,PDCCH}^{CA} Nslot,offset,PDCCHCA 和 μ o f f s e t , P D C C H \mu_{offset,PDCCH} μoffset,PDCCH 分别是PDCCH相对主小区的时隙偏移量和对应的子载波参数。 N s l o t , o f f s e t , P U S C H C A N_{slot,offset,PUSCH}^{CA} Nslot,offset,PUSCHCA 和 μ o f f s e t , P U S C H \mu_{offset,PUSCH} μoffset,PUSCH 分别是PUSCH相对主小区时隙偏移量和对应的子载波参数(TS 38.211 Clause 4.5)。 N s l o t , o f f s e t C A N_{slot,offset}^{CA} Nslot,offsetCA 是服务小区相对主小区的起始时隙偏移量,每时隙的长度的和 μ o f f s e t \mu_{offset} μoffset 相对应, μ o f f s e t \mu_{offset} μoffset 是主小区最小子载波参数和服务小区最小子载波参数的最大值。
(2) 如果 UE 被配置参数 CellSpecific_Koffset, K s = ⌊ n ⋅ 2 μ P U S C H 2 μ P D C C H ⌋ + K 2 + K o f f s e t ⋅ 2 μ P U S C H 2 μ K o f f s e t K_s=\left\lfloor n\cdot{2^{\mu_{PUSCH}}\over 2^{\mu_{PDCCH}}}\right\rfloor +K_2+K_{offset}\cdot{2^{\mu_{PUSCH}}\over 2^{\mu_{K_{offset}}}} Ks=⌊n⋅2μPDCCH2μPUSCH⌋+K2+Koffset⋅2μKoffset2μPUSCH
(3) 其它 K s = ⌊ n ⋅ 2 μ P U S C H 2 μ P D C C H ⌋ + K 2 K_s=\left\lfloor n\cdot{2^{\mu_{PUSCH}}\over 2^{\mu_{PDCCH}}}\right\rfloor +K_2 Ks=⌊n⋅2μPDCCH2μPUSCH⌋+K2符号起点和符号长度
PUSCH 重复类型A
针对 PUSCH 重复类型 A 和跨多时隙的传输块过程 (TB processing),起始符号 S 和连续符号 L 由 起始及长度指示值 (SLIV)给出:- 如果 L − 1 ≤ 7 L-1\le 7 L−1≤7, S L I V = 14 ( L − 1 ) + S {SLIV}=14(L-1)+S SLIV=14(L−1)+S
- 否则
S
L
I
V
=
14
(
14
−
L
+
1
)
+
(
14
−
1
−
S
)
{SLIV}=14(14-L+1)+(14-1-S)
SLIV=14(14−L+1)+(14−1−S)
这里 0 < L ≤ 14 − S 0<L\le 14-S 0<L≤14−S。
注: 根据 SLIV 求 S 和 L:
S 1 = m o d ( S L I V , 14 ) , L 1 − 1 = ( S L I V − S 1 ) / 14 , S_1=\mod(SLIV, 14), \quad L_1-1=(SLIV-S_1)/14, S1=mod(SLIV,14),L1−1=(SLIV−S1)/14, 如果 S + L ≤ 14 S+L\le14 S+L≤14 , 则 S = S 1 , L = L 1 S=S_1, \ L=L_1 S=S1, L=L1;
否则, S = 14 − 1 − S 1 , L − 1 = 14 − ( L 1 − 1 ) S=14-1-S_1, \ L-1=14-(L_1-1) S=14−1−S1, L−1=14−(L1−1) 。对于 PUSCH 映射类型 A (mapping Type A, TS38.211 Clause 6.4.1.1.3), S 和 L 的取值
- 对于一般循环前缀(CP)系统为 S = 0 , L = { 4 , ⋯ , 14 } , S + L = { 4 , ⋯ , 14 } S=0, \ L=\{4,\cdots, 14\}, \ S+L=\{4,\cdots, 14\} S=0, L={4,⋯,14}, S+L={4,⋯,14},
- 对于加长循环前缀(CP)系统为 S = 0 , L = { 4 , ⋯ , 12 } , S + L = { 4 , ⋯ , 12 } S=0, \ L=\{4,\cdots, 12\}, \ S+L=\{4,\cdots, 12\} S=0, L={4,⋯,12}, S+L={4,⋯,12}。
对于 PUSCH 映射类型 B (mapping Type B), S 和 L 的取值
- 对于一般循环前缀(CP)系统为 S = { 0 , ⋯ , 13 } L = { 1 , ⋯ , 14 } , S + L = { 1 , ⋯ , 14 } S=\{0,\cdots, 13\} \ L=\{1,\cdots, 14\}, \ S+L=\{1,\cdots, 14\} S={0,⋯,13} L={1,⋯,14}, S+L={1,⋯,14},
- 对于加长循环前缀(CP)系统为 S = { 0 , ⋯ , 11 } L = { 1 , ⋯ , 12 } , S + L = { 1 , ⋯ , 12 } S=\{0,\cdots, 11\} \ L=\{1,\cdots, 12\}, \ S+L=\{1,\cdots, 12\} S={0,⋯,11} L={1,⋯,12}, S+L={1,⋯,12}。
SLIV 的值小于 128,因此可以用 7 个比特表示。
PUSCH 重复类型B
对于 PUSCH 重复类型 B (repetition Type B),相对于时隙起点的开始符号 S和连续符号数 L 由分别由资源分配表的相应行指示的起始符号和长度参数给出。
PUSCH 重复类型 B 只设置成映射类型 B(mapping Type B), S 和 L 的取值- 对于一般循环前缀(CP)系统为 S = { 0 , ⋯ , 13 } L = { 1 , ⋯ , 14 } , S + L = { 1 , ⋯ , 27 } S=\{0,\cdots, 13\} \ L=\{1,\cdots, 14\}, \ S+L=\{1,\cdots, 27\} S={0,⋯,13} L={1,⋯,14}, S+L={1,⋯,27},
- 对于加长循环前缀(CP)系统为 S = { 0 , ⋯ , 11 } L = { 1 , ⋯ , 12 } , S + L = { 1 , ⋯ , 23 } S=\{0,\cdots, 11\} \ L=\{1,\cdots, 12\}, \ S+L=\{1,\cdots, 23\} S={0,⋯,11} L={1,⋯,12}, S+L={1,⋯,23}。
映射类型
PUSCH的映射类型包括映射类型A和映射类型B,PUSCH的解调参考信号(DM-RS)的时域位置与映射类型有关 (TS 38.211 Clause 6.4.1.1.3)。DMRS所在的OFDM符号位置 l l l 为 l = l ˉ + l ′ l=\bar l+l' l=lˉ+l′ 其中 l ˉ \bar l lˉ 由 TS 38.211 Table 6.4.1.1.3-3 至 Table 6.4.1.1.3-6 得到, l ′ = { 0 , 1 } l'=\{0,1\} l′={0,1} 为时域扩频序列的序号。表格中的 l 0 l_0 l0 为首个DM-RS的符号位置, l d l_d ld 为一个时隙内或一个跳频区间所分配的PUSCH符号数目。
对于 PUSCH mapping type A:
- 无跳频(frequency hopping)情况下, l l l 为相对于时隙起点的符号值;跳频情况下, l l l 为相对于每个跳频起点的符号值;
- l 0 l_0 l0 由上层参数 dmrs-TypeA-Position 给出。 l 0 = { 2 , pos 2 3 , pos 3 l_0=\begin{cases}2,& \text{pos}2\\3,& \text{pos}3\end{cases} l0={2,3,pos2pos3
MIB ::= SEQUENCE { systemFrameNumber BIT STRING (SIZE (6)), subCarrierSpacingCommon ENUMERATED {scs15or60, scs30or120}, ssb-SubcarrierOffset INTEGER (0..15), dmrs-TypeA-Position ENUMERATED {pos2, pos3}, pdcch-ConfigSIB1 PDCCH-ConfigSIB1, cellBarred ENUMERATED {barred, notBarred}, intraFreqReselection ENUMERATED {allowed, notAllowed}, spare BIT STRING (SIZE (1)) }
对于 PUSCH mapping type B:
- 无跳频(frequency hopping)情况下, l l l 为相对于时隙起点的符号值;跳频情况下, l l l 为相对于每个跳频起点的符号值;
- l 0 = 0 l_0=0 l0=0 。
对于无跳频情况, l d l_d ld 是一个时隙所分配的PUSCH符号数:从分配的起始OFDM符号到分配的最后OFDM符号。对于时隙内跳频情况 (intra-slot frequency hopping) l d l_d ld 是一个跳频区间所分配的PUSCH符号数。
TB时隙长度和重复次数
在给定 N N N 和 K K K 后,UE决定用于PUSCH的时隙。
对于PUSCH重复类型A,UE 指定 N ⋅ K N\cdot K N⋅K 个时隙用于 PUSCH 传输。
- 对于非成对频谱的系统(TDD),UE所指定的 N ⋅ K N\cdot K N⋅K 个时隙不包括那些不可用于PUSCH的时隙;
- 对于成对频谱的系统(FDD),UE指定 N ⋅ K N\cdot K N⋅K 个连续的时隙。
对于PUSCH重复类型B,UE 所指定的用于第 n , n = 0 , ⋯ , n u m b e r O f R e p e t i t i o n s − 1 n,\ n=0,\cdots, numberOfRepetitions - 1 n, n=0,⋯,numberOfRepetitions−1, 个PUSCH 传输的
- 开始时隙为
K s + ⌊ S + n ⋅ L N s y m b s l o t ⌋ , K_s+\left\lfloor {S+n\cdot L\over N_{symb}^{slot}}\right\rfloor, Ks+⌊NsymbslotS+n⋅L⌋, 相对于时隙起点的符号起点为
( S + n ⋅ L ) m o d N s y m b s l o t {(S+n\cdot L) \mod N_{symb}^{slot}} (S+n⋅L)modNsymbslot - 结束时隙为
K s + ⌊ S + ( n + 1 ) ⋅ L − 1 N s y m b s l o t ⌋ , K_s+\left\lfloor {S+(n+1)\cdot L-1\over N_{symb}^{slot}}\right\rfloor, Ks+⌊NsymbslotS+(n+1)⋅L−1⌋, 相对于时隙起点的结束符号为
( S + ( n + 1 ) ⋅ L − 1 ) m o d N s y m b s l o t {(S+ (n+1)\cdot L-1) \mod N_{symb}^{slot}} (S+(n+1)⋅L−1)modNsymbslot
这里 N s y m b s l o t N_{symb}^{slot} Nsymbslot 表示每个时隙的符号数。
UE如何获得资源分配参数 ?
UE获取 K2, S,L 和映射类型
发送TB情况
当UE由下行控制指示信息(DCI)调度为在 PUSCH 发送传输块(TB)且无信道信息(CSI)报告,或者UE被调度为发送 TB 且报告 CSI ,DCI 的 ‘Time domain resource assignment’ 域给出的值 m 指示分配表的第 m + 1 行,该行给出- 时隙偏移量 K 2 K_2 K2;
- 起始符号与连续符号指示值 SLIV,或者直接给出 起始符号 S 和分配长度 L;
- PUSCH 映射类型(A 或 B);
PUSCH 调度的 DCI (TS 38.212 R17 Clause 7.3.1.1)
- DCI 0_0
- DCI 0_1
- DCI 0_2
DCI 0_0 的 ‘Time domain resource assignment’ 域 4 个比特,指示 PUSCH 资源分配表的第 { 1 , ⋯ , 16 } \{1,\cdots, 16\} {1,⋯,16} 行。
DCI 0_1 的 ‘Time domain resource assignment’ 域 0, 1, 2, 3, 4, 5, 或 6 个比特,比特宽度为 ⌈ log 2 I ⌉ \lceil{\log_2 I }\rceil ⌈log2I⌉,这里 I I I 是资源分配的项数。资源分配是上层参数 pusch-TimeDomainAllocationList; 或者pusch-TimeDomainAllocationListDCI-0-1 或者 pusch-TimeDomainAllocationListForMultiPUSCH 或者 pusch-TimeDomainResourceAllocationListForMultiPUSCH-r17; 或者由缺省的分配表提供。
DCI 0_2 的 ‘Time domain resource assignment’ 域 0, 1, 2, 3, 4, 5, 或 6 个比特,比特宽度为 ⌈ log 2 I ⌉ \lceil{\log_2 I }\rceil ⌈log2I⌉,这里 I I I 是资源分配的项数。资源分配是上层参数 TimeDomainAllocationListDCI-0-2 或者 PUSCH-TimeDomainResourceAllocationList; 或者由缺省的分配表提供。
缺省的资源分配表见 TS 38.212 R17 Table 6.1.2.1.1-2,Table 6.1.2.1.1-3,Table 6.1.2.1.1-4
Table 6.1.2.1.1-2 正常 CP 情况
Row index PUSCH mapping type K 2 S L 1 Type A j 0 14 2 Type A j 0 12 3 Type A j 0 10 4 Type B j 2 10 ⋯ ⋯ ⋯ ⋯ ⋯ 16 Type A j + 3 0 10 \begin{array}{|c|c|c|c|c|}\hline \text{Row index}&\text{PUSCH mapping type} & K_2 & S & L\\ \hline 1 &\text{Type A} & j &0 &14\\ \hline 2 &\text{Type A} & j &0 &12\\ \hline 3 &\text{Type A} & j &0 & 10\\ \hline 4 &\text{Type B} & j &2 &10\\ \hline \cdots & \cdots &\cdots &\cdots &\cdots\\ \hline 16 &\text{Type A} & j+3 &0 &10\\ \hline \end{array} Row index1234⋯16PUSCH mapping typeType AType AType AType B⋯Type AK2jjjj⋯j+3S0002⋯0L14121010⋯10
Table 6.1.2.1.1-3 加长 CP 情况
Row index PUSCH mapping type K 2 S L 1 Type A j 0 8 2 Type A j 0 12 3 Type A j 0 10 4 Type B j 2 10 ⋯ ⋯ ⋯ ⋯ ⋯ 16 Type A j + 3 0 10 \begin{array}{|c|c|c|c|c|}\hline \text{Row index}&\text{PUSCH mapping type} & K_2 & S & L\\ \hline 1 &\text{Type A} & j &0 &8\\ \hline 2 &\text{Type A} & j &0 &12\\ \hline 3 &\text{Type A} & j &0 & 10\\ \hline 4 &\text{Type B} & j &2 &10\\ \hline \cdots & \cdots &\cdots &\cdots &\cdots\\ \hline 16 &\text{Type A} & j+3 &0 &10\\ \hline \end{array} Row index1234⋯16PUSCH mapping typeType AType AType AType B⋯Type AK2jjjj⋯j+3S0002⋯0L8121010⋯10
Table 6.1.2.1.1-4 定义 j j j
μ P U S C H j 0 1 1 1 2 2 3 3 4 11 5 21 \begin{array}{|c|c|}\hline \mu_{PUSCH}& \quad j\\ \hline 0 & 1\\\hline 1 & 1\\\hline 2 & 2\\\hline 3 & 3\\\hline 4 & 11\\ \hline 5 & 21\\\hline \end{array} μPUSCH012345j11231121上层 pusch 时域资源分配控制字 (38.331 )
pusch-TimeDomainAllocationList SetupRelease { PUSCH-TimeDomainResourceAllocationList } PUSCH-TimeDomainResourceAllocationList ::= SEQUENCE (SIZE(1..maxNrofUL-Allocations)) OF PUSCH-TimeDomainResourceAllocation PUSCH-TimeDomainResourceAllocation ::= SEQUENCE { k2 INTEGER(0..32) OPTIONAL, -- Need S mappingType ENUMERATED {typeA, typeB}, startSymbolAndLength INTEGER (0..127) }
pusch-TimeDomainAllocationListDCI-0-1-r16 SetupRelease { PUSCH-TimeDomainResourceAllocationList-r16 } pusch-TimeDomainAllocationListDCI-0-2-r16 SetupRelease { PUSCH-TimeDomainResourceAllocationList-r16 } pusch-TimeDomainAllocationListForMultiPUSCH-r16 SetupRelease { PUSCH-TimeDomainResourceAllocationList-r16 } PUSCH-TimeDomainResourceAllocationList-r16 ::= SEQUENCE (SIZE(1..maxNrofUL-Allocations-r16)) OF PUSCH-TimeDomainResourceAllocation-r16 PUSCH-TimeDomainResourceAllocation-r16 ::= SEQUENCE { k2-r16 INTEGER(0..32) OPTIONAL, -- Need S puschAllocationList-r16 SEQUENCE (SIZE(1..maxNrofMultiplePUSCHs-r16)) OF PUSCH-Allocation-r16, ... } PUSCH-Allocation-r16 ::= SEQUENCE { mappingType-r16 ENUMERATED {typeA, typeB} OPTIONAL, -- Cond NotFormat01-02-Or-TypeA startSymbolAndLength-r16 INTEGER (0..127) OPTIONAL, -- Cond NotFormat01-02-Or-TypeA startSymbol-r16 INTEGER (0..13) OPTIONAL, -- Cond RepTypeB length-r16 INTEGER (1..14) OPTIONAL, -- Cond RepTypeB numberOfRepetitions-r16 ENUMERATED {n1, n2, n3, n4, n7, n8, n12, n16} OPTIONAL, -- Cond Format01-02 ... }
发送CSI情况
当UE由下行控制指示信息(DCI)的 ‘CSI request’ 域指示为在 PUSCH 不发送传输块(TB)只进行信道信息(CSI)报告,DCI 的 ‘Time domain resource assignment’ 域给出的值 m 指示分配表的第 m + 1 行,该行给出- 起始符号与连续符号指示值 SLIV,或者直接给出 起始符号 S 和分配长度 L;
- PUSCH 映射类型(A 或 B);
- 时隙偏移量
K
2
=
max
j
Y
j
(
m
+
1
)
K_2=\max_j Y_j(m+1)
K2=maxjYj(m+1),
Y
j
,
j
=
0
,
1
,
⋯
,
N
R
e
p
−
1
Y_j,\ j=0,1,\cdots, N_{Rep}-1
Yj, j=0,1,⋯,NRep−1 由上层参数给出:
– reportSlotOffsetListDCI-0-2;
– reportSlotOffsetListDCI-0-1;
– reportSlotOffsetList。
semiPersistentOnPUSCH SEQUENCE { reportSlotConfig ENUMERATED {sl5, sl10, sl20, sl40, sl80, sl160, sl320}, reportSlotOffsetList SEQUENCE (SIZE (1.. maxNrofUL-Allocations)) OF INTEGER(0..32), p0alpha P0-PUSCH-AlphaSetId }, aperiodic SEQUENCE { reportSlotOffsetList SEQUENCE (SIZE (1..maxNrofUL-Allocations)) OF INTEGER(0..32) } semiPersistentOnPUSCH-v1610 SEQUENCE { reportSlotOffsetListDCI-0-2-r16 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..32) OPTIONAL, -- Need R reportSlotOffsetListDCI-0-1-r16 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..32) OPTIONAL -- Need R } OPTIONAL, -- Need R aperiodic-v1610 SEQUENCE { reportSlotOffsetListDCI-0-2-r16 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..32) OPTIONAL, -- Need R reportSlotOffsetListDCI-0-1-r16 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..32) OPTIONAL -- Need R }
UE获取 N 和 K
对于多时隙TB情况,当 PUSCH 由 DCI 0_1 或 0_2 调度, DCI 的 CRC 的扰码为 C-RNTI, MCS-C-RNTI, 或 CS-RNTI 且新数据指示 NDI=1,
- 对应TBS的时隙长度 N N N 由参数 numberOfSlotsTBoMS 指示;
- 如果配置参数 numberOfRepetitions, 重复次数 K = n u m b e r O f R e p e t i t i o n s K=numberOfRepetitions K=numberOfRepetitions;否则 K = 1 K=1 K=1;
- N K ≤ min ( 32 , K m a x ) NK\le \min(32,K_{max}) NK≤min(32,Kmax) , 这里 K m a x K_{max} Kmax 表示 UE 的能力。
numberOfRepetitions-r16 ENUMERATED {n1, n2, n3, n4, n7, n8, n12, n16} OPTIONAL, -- Cond Format01-02
对于PUSCH重复类型A,当 PUSCH 由 DCI 0_1 或 0_2 调度, DCI 的 CRC 的扰码为 C-RNTI, MCS-C-RNTI, 或 CS-RNTI 且新数据指示 NDI=1,
- 如果配置参数 numberOfRepetitions, 重复次数 K = n u m b e r O f R e p e t i t i o n s K=numberOfRepetitions K=numberOfRepetitions;否则
- 如果配置参数 pusch-AggregationFactor,重复次数 K = p u s c h − A g g r e g a t i o n F a c t o r K=pusch-AggregationFactor K=pusch−AggregationFactor;否则
-
K
=
1
K=1
K=1
K = { n u m b e r O f R e p e t i t i o n s , if present p u s c h − A g g r e g a t i o n F a c t o r , if present 1 , else K=\begin{cases}numberOfRepetitions,& \text{if present}\\pusch-AggregationFactor, & \text{if present}\\1, &\text{else}\end{cases} K=⎩⎪⎨⎪⎧numberOfRepetitions,pusch−AggregationFactor,1,if presentif presentelse - N = 1 N=1 N=1
pusch-AggregationFactor ENUMERATED { n2, n4, n8 } OPTIONAL, -- Need S
对于PUSCH重复类型A,当 PUSCH 由 RAR UL grant调度,或者当PUSCH 由 DCI 0_0 调度 且 CRC 以 TC-RNTI 扰码, MCS 信息域的最前面的两个比特 (2 MSBs)构成的编码(code)决定重复次数 K 。如果配置了参数 numberOfMsg3Repetitions, code = 00 , 01 , 10 , 11 \text{code}=00,01,10,11 code=00,01,10,11 分布指示第 1,2,3,4 个 numberOfMsg3Repetitions 的值;否则 code = 00 , 01 , 10 , 11 \text{code}=00,01,10,11 code=00,01,10,11 表示 K = 1 , 2 , 3 , 4 K=1,2,3,4 K=1,2,3,4。
更多相关内容 -
LTE-PUSCH上行跳频.doc编程资料
2022-04-15 13:57:33LTE-PUSCH上行跳频.doc -
5G NR pusch pucch
2019-04-27 15:26:395G NR pusch pucch介绍,给5G通信入门者的好资料。十分经典。 -
PUSCH基带接收算法
2018-08-09 09:21:08PUSCH基带接收算法,非常详尽的描述了PUSCH链路的搭建及其仿真 -
上行物理信道 PUSCH
2022-05-13 17:14:09物理上行共享信道,PUSCH 物理上行控制信道,PUCCH 物理随机接入信道,PRACH NR的上行物理信号有以下几种: 解调参考信号,DM-RS 相位追踪参考信号,PT-RS 探测参考信号, SRS 上行相关的天线端口定义如下: ...与LTE相比,上行物理信道有以下三类:
- 物理上行共享信道,PUSCH
- 物理上行控制信道,PUCCH
- 物理随机接入信道,PRACH
NR的上行物理信号有以下几种:
- 解调参考信号,DM-RS
- 相位追踪参考信号,PT-RS
- 探测参考信号, SRS
上行相关的天线端口定义如下:
- 从天线端口号0开始的天线端口用于PUSCH的DM-RS
- 从天线端口号1000开始的天线端口用于SRS,PUSCH
- 从天线端口号2000开始的天线端口用于PUCCH
- 天线端口号为4000的天线端口用于PRACH
对于NR中的PUSCH信道,3GPP标准使用OFDM作为上行传输的基本传输机制,而把DFT预编码作为可选方案。
使用DFT预编码可以减低立方度量,使终端可以获得较高的发射功率,这个与LTE中的PUSCH设计是一致的。但是DFT预编码造成了接收机的设计非常复杂,而且与LTE中的PUSCH传输一样,以DFT预编码为基础的NR中的PUSCH传输也要求给一个终端分配的频域资源必须是连续的,即要满足单载波连续特性。这些都是它的确定。
NR中限制DFT预编码为基础的PUSCH传输只能在单层传输中使用,而OFDM为基础的PUSCH传输最大可以支持上行四层传输。
Scrambling
对于单codeword q=0的情况,bit块为,表示在物理信道上传输的codeword q的bit数量,这些bits应该在调制之前按照以下公式进行加扰,加扰之后的bits块为
:
其中x,y为占位符,解释如下:当bit块的长度为1个bit或者2个bits时,在encode时需要对bit块进行占位符操作得到一个新的加扰后的bit块,具体如下:
调制对于PUSCH,支持以下几种调制方式,
对于单codeword q=0,已加扰的bit块使用以上调制方式之一进行调制,得到复数值的调制符号
。
层映射对于单codeword q=0,要被传输的调制符号可以按照Table7.3.1.3-1映射到最多4层上。需要注意的是,下行PDSCH也是使用该表做层映射,PUSCH与其不同的是最多只能做4层映射,而PDSCH可以最多做8层映射。codeword q的复数数值调制符号应被映射到层:
上,
,其中
指的是每层的调制符号数量,v表示一共有多少层。
Transform precoding首先,我们先了解一下在什么情况下需要在PUSCH上使用transform precoding,先搞清楚这个,我们再往下说。对于随机接入流程中的Msg3 PUSCH传输,UE根据信令RACH-ConfigCommon中的IE:msg3-transformPrecoder 来确定是否要开启或者关闭transform precoding功能;如果该IE没有在信令RACH-ConfigCommon中出现,则UE关闭Msg3 PUSCH传输的transform precoding功能。对于由CS-RNTI(NDI=1),C-RNTI,MCS-C-RNTI或者SP-CSI-RNTI加扰的PDCCH调度的PUSCH传输:- 如果UE收到的UL grant是接收DCI 0_0得到的,那么对应的PUSCH是否开启或者关闭transform precoding取决于IE:msg3-transformPrecoder的值
- 如果UE收到的UL grant不是通过接收DCI 0_0得到的,
2. 如果UE在信令 PUSCH-Config中没有发现配置有IE :transformPrecoder,那么对应的PUSCH是否开启或者关闭transform precoding取决于IE: msg3-transformPrecoder 的值对于使用configured grant(即半静态或者半持续调度,具体内容我们会在后面的“上行传输流程”中介绍)的PUSCH:- 如果UE在信令中configuredGrantConfig配置有IE:transformPrecoder,那么对应的PUSCH是否开启或者关闭transform precoding取决于该IE。
- 如果UE在信令中configuredGrantConfig没有配置有IE:transformPrecoder,那么对应的PUSCH是否开启或者关闭transform precoding取决于IE:msg3-transformPrecoder的值
下面我们再看看Transform precoding,transform precoding将数据依次做串并转换,变成并行个数据,然后将这些并行的个数据做DFT(离散傅立叶变换),所以transform precoding的主要作用就是做一个离散傅立叶变换,将时域上的离散数据转换成频域上的离散数据。其中,
表示被调度的上行传输在频域上的长度,以子载波个数表示。
如果开启了transform precoding功能,预编号后的上行符号取决于PT-RS的配置:
- 如果上行PUSCH传输上没有PT-RS,那么对于仅有一层
的上行PUSCH传输的复数值符号块
应拆分为
个集合,每个集合都对应一个OFDM符号,transform precoding之前的复数值符号的
。其中,表示一个层上的调制符号数量。
- 如果上行PUSCH传输上有PT-RS,那么复数值的符号块
应拆分成多个集合(set),每个集合对应一个OFDM符号。在做transform precoding之前, 包含了
个符号的集合
映射到复数值符号
上,该复数值符号对应OFDM符号
,
并且
,当OFDM符号
包含一个或多个PT-RS采样时,
,否则
。
表示集合中每个PT-RS组的采样个数;
表示集合中PT-RS组的个数。
集合中的PT-RS采样的索引m,每个PT-RS组的采样个数
以及PT-RS组的个数
由下表决定:
Transform precoding按照以下公式应用于传输块从而得到复数值符号块
:
Precoding我们都知道预编码的目的是使发射信号和空间信道相匹配,降低各个用户信号之间的相互干扰,降低用户端的处理复杂度;因此预编码是在发射端进行的。NR和LTE一样,都有预编码机制。向量块,
,按照以下公式进行预编码:
其中,,
表示每个天线端口上传输的调制符号的数量;
表示传输的层数;
表示天线端口个数。
对于不基于码本(non-codebook-based)的传输,预编码矩阵W等同于单位矩阵。对于基于码本(codebook-based)的传输,预编码矩阵W定义如下:- 对于单天线单层传输,W=1
- 如果信令tx-Config没有配置,预编码矩阵W=1
- 对于其他情况,由Table 6.3.1.5-1~6.3.1.5-7给出
上述Table中的TPMI index由调度上行PUSCH传输的DCI 0_1中的‘Precoding information and number of layers’字段确定,该字段的bit数的定义如下:
- 如果信令PUSCH-Config中的IE:txConfig的值等于 nonCodeBook,则该字段长度为0 bit,即该字段在DCI0_1中不出现。
- 如果信令PUSCH-Config中的IE:txConfig的值等于codeBook并且PUSCH传输为1个天线端口,那么该字段长度为0 bit。
- 如果信令PUSCH-Config中的IE:txConfig的值等于codeBook并且PUSCH传输为4个天线端口,tranform precoder禁用,该字段长度可以分别为4,5或者6 bits,那么根据信令maxRank和codebookSubset的值,并通过Table 7.3.1.1.2-2就可以查到TPMI值
- 如果信令PUSCH-Config中的IE:txConfig的值等于codeBook并且PUSCH传输为4个天线端口,tranform precoder可以开启也可以禁用,该字段长度可以分别为2,4或者5 bits,那么根据信令maxRank和codebookSubset的值,并通过Table 7.3.1.1.2-3就可以查到TPMI值。
- 如果信令PUSCH-Config中的IE:txConfig的值等于codeBook并且PUSCH传输为2个天线端口,tranform precoder禁用,该字段长度可以分别为2或者4 bits,那么根据信令maxRank和codebookSubset的值,并通过Table 7.3.1.1.2-4就可以查到TPMI值
- 如果信令PUSCH-Config中的IE:txConfig的值等于codeBook并且PUSCH传输为2个天线端口,tranform precoder可以开启也可以禁用,该字段长度可以分别为1或者3 bits,那么根据信令maxRank和codebookSubset的值,并通过Table 7.3.1.1.2-5就可以查到TPMI值
我们举个简单的例子来说明一下:前置条件:相关参数如下天线端口数量为4; DCI 0_1中的字段‘Precoding information and number of layers’ = 32从前置条件我们知道,需要查阅Table 7.3.1.1.2-2来获取TPMI数值,查表后我们可以得知:TPMI= 12,1层传输;然后根据transform precoder=enable, 单层传输,4个天线端口可以知道需要查阅Table 6.3.1.5-2,查表后我们可以得到:Pecode matrix W=Mapping to virtual resource blocks在PUSCH传输的每个天线端口上,复数值符号块从
开始依次映射到用于PUSCH传输的VRB中的RE
(该RE的意思是在子载波间距
中,天线端口p上的RE)上,并要符合下列准则:
- 这些RE都在用于PUSCH传输的VRB中,并且,
- 这些RE不能用于相关的DM-RS, PT-RS,或者用作同时调度的UE的DM-RS。
向RE
的映射应在用于PUSCH传输的VRB中进行,依照先频域后时域的升序进行映射,即在频域上从序号最小的VRB的第一个子载波开始映射,频域上映射完毕后再转到时域上下一个OFDM符号继续映射。
Mapping from VRB to PRB对于上行PUSCH传输,VRB使用非交织映射被映射到PRB上。对于非交织VRB-to-PRB映射,除了Msg3外,VRB n直接映射到PRB n上;对于在active BWP i上(该BWP的起始位置为)进行的Msg3上行传输,如果该active BWP i包含了从
开始的initial uplink BWP,并且和initial uplink BWP具有相同的子载波间距和循环前缀。在这种场景中,UE使用initial Uplink BWP来传输Msg3,用于msg3的PUSCH传输的VRB n映射到PRB
上。
-
基于FPGA的PUSCH信道估计仿真与实现
2020-10-18 13:12:50基于最小平方 (LS) 算法,利用FPGA实现了一种适用于TD-LTE系统的上行信道估计算法。主要研究了如何利用FPGA实现LS算法,包括算法的介绍、方案的形成、FPGA实现的处理流程、FPGA实现结果及分析。... -
TD-LTE系统中基于FPGA的PUSCH信号检测
2020-10-18 03:19:02主要研究如何利用FPGA实现适用于TD-LTE系统的上行信号检测算法,包括算法的介绍、方案的形成、FPGA实现的处理流程、FPGA实现结果及分析。以Virtex-5芯片为硬件平台,进行了仿真、综合、板级验证等工作。... -
论文研究-LTE-A系统PUSCH功率控制算法 .pdf
2019-08-16 15:36:23LTE-A系统PUSCH功率控制算法,魏豪,刘可文,本文针对现有LTE-A系统上行物理共享信道(PUSCH)功率控制中外环基于PHR处理来更新目标SINR方案存在对小区边缘用户性能改善不明显以及� -
PUSCH repetition type A
2021-01-15 14:10:05这里写自定义目录标题PUSCH repetition type A概念解释配置方法Rel-15Rel-16repetition type A与时域资源分配 PUSCH repetition type A 本篇文章解释阐述NR PUSCH repetition的一些特性和配置方法。 概念解释 PUSCH ...NR Rel-15/16学习笔记
PUSCH repetition type A
本篇文章阐述NR PUSCH repetition的一些特性和配置方法。
概念解释
PUSCH repetition type A是用户在连续的K个slot上发送同一个TB,且在K个slot中占据的符号位置完全相同(起始符号位置与占据符号长度均相同)。与HARQ相似的地方在于,二者都可以看做是信息的重传;其不同点在于,HARQ需要收到NACK才会触发重传,而PUSCH Repetition 配置结束以后可以直接进行K次重传。下面给出Repetition type A在使用PUSCH mapping type A时的示意图。
repetition次数的配置方法
From 38.331 V16.1.0
Rel-15
在Rel-15中,PUSCH repetition的最大传输次数为8,由PUSCH-Config中的 pusch-AggregationFactor配置。
PUSCH-Config ::= SEQUENCE { dataScramblingIdentityPUSCH INTEGER (0..1023) OPTIONAL, -- Need S txConfig ENUMERATED {codebook, nonCodebook} OPTIONAL, -- Need S dmrs-UplinkForPUSCH-MappingTypeA SetupRelease { DMRS-UplinkConfig } OPTIONAL, -- Need M dmrs-UplinkForPUSCH-MappingTypeB SetupRelease { DMRS-UplinkConfig } OPTIONAL, -- Need M pusch-PowerControl PUSCH-PowerControl OPTIONAL, -- Need M frequencyHopping ENUMERATED {intraSlot, interSlot} OPTIONAL, -- Need S frequencyHoppingOffsetLists SEQUENCE (SIZE (1..4)) OF INTEGER (1.. maxNrofPhysicalResourceBlocks-1) OPTIONAL, -- Need M resourceAllocation ENUMERATED { resourceAllocationType0, resourceAllocationType1, dynamicSwitch}, pusch-TimeDomainAllocationList SetupRelease { PUSCH-TimeDomainResourceAllocationList } OPTIONAL, -- Need M pusch-AggregationFactor ENUMERATED { n2, n4, n8 } OPTIONAL, -- Need S
Rel-16
在Rel-16中,PUSCH repetition的最大传输次数设置为16,由PUSCH-TimeDomainResourceAllocationList 中的numberOfRepetitions配置。
PUSCH-TimeDomainResourceAllocationList ::= SEQUENCE (SIZE(1..maxNrofUL-Allocations)) OF PUSCH-TimeDomainResourceAllocation PUSCH-TimeDomainResourceAllocation ::= SEQUENCE { k2 INTEGER(0..32) OPTIONAL, -- Need S mappingType ENUMERATED {typeA, typeB}, startSymbolAndLength INTEGER (0..127) } PUSCH-TimeDomainResourceAllocationList-r16 ::= SEQUENCE (SIZE(1..maxNrofUL-Allocations-r16)) OF PUSCH-TimeDomainResourceAllocation-r16 PUSCH-TimeDomainResourceAllocation-r16 ::= SEQUENCE { k2-r16 INTEGER(0..32) OPTIONAL, -- Need S puschAllocationList-r16 SEQUENCE (SIZE(1..maxNrofMultiplePUSCHs-r16)) OF PUSCH-Allocation-r16, ... } PUSCH-Allocation-r16 ::= SEQUENCE { mappingType-r16 ENUMERATED {typeA, typeB} OPTIONAL, -- Cond NotFormat01-02-Or-TypeA startSymbolAndLength-r16 INTEGER (0..127) OPTIONAL, -- Cond NotFormat01-02-Or-TypeA startSymbol-r16 INTEGER (0..13) OPTIONAL, -- Cond RepTypeB length-r16 INTEGER (1..14) OPTIONAL, -- Cond RepTypeB numberOfRepetitions-r16 ENUMERATED {n1, n2, n3, n4, n7, n8, n12, n16} OPTIONAL, -- Cond Format01-02 ... }
From 38.214 V16.2.0 6.1.2.1
当PUSCH repetition是由DCI format 0_1或者0_2调度,且由C-RNTI,MCS-C-RNTI或者是CS-RNTI加扰,且NDI=1(New data indicator)时,重传次数K的取值方法是:
按照numberOfRepetitions>pusch-AggregationFactor>K=1的优先级顺序依次进行取值。repetition type A与PUSCH 时域资源分配
- 第一次传输的版本号根据DCI field 中的Redundancy version确定 (Redundancy version占据两个bit位),之后的RV版本号按照0,2,3,1循环。比如,当DCI指示第一次传输的版本号为2,则后面的版本号依次为3,1,0,2…
- PUSCH repetition type A只支持单层传输。
- PUSCH repetition type A支持PUSCH mapping type A 和PUSCH mapping type B。当repetition type A使用PUSCH mapping type B时,其 S + L ∈ { 1 , . . , 14 } S+L \in{\{1,..,14\}} S+L∈{1,..,14}。
- Repetition需要占据多个slot,根据38.213中的11.1,决定是否放弃repetition在当前slot的传输。
repetition type A 与PUSCH 跳频配置
From 38.214 V16.2.0 6.3.1
Repetition type A支持时隙间以及时隙内跳频。正常的PUSCH 传输可以看作是PUSCH repetition type A在K=1的一种特殊情况,因此也可以适用本节所描述的跳频方案(Intra-slot跳频方案)。Rel-15中,该节对应38.214 v15.10.0 6.3章节。是否进行跳频
-
当PUSCH的频域分配type为1时,UE有可能进行跳频。
- 在对应的DCI中监测到了跳频指示域
注:DCI 0_0/0_1/0_2 中都包含一个1bit的field“Frequency Hopping Flag ”,0对应Disabled FH,1对应Enabled FH. - RAR UL grant设置为1
- 在configured grant type 1的情况下,设置了frequencyHoppingOffset
- 其他情况下,UE不进行跳频。
- 在对应的DCI中监测到了跳频指示域
-
当PUSCH的频域分配type为2时,UE不进行跳频。
跳频参数配置
当PUSCH repetition type A进行跳频时,可以通过以下方式为UE配置跳频参数,包括选择时隙间跳频或者时隙内跳频(Inter-slot or Intra-slot),跳频的偏置值(Frequency offset)。
Intra-slot & Inter-slot 配置
- 当PUSCH的传输由DCI 0_2调度,通过pusch-Config中的参数 frequencyHopping-ForDCIFormat0_2 进行配置。
- 当PUSCH的传输由DCI调度,但不是DCI 0_2,通过pusch-Config中的参数 frequencyHopping 进行配置。
PUSCH-Config ::= SEQUENCE { dataScramblingIdentityPUSCH INTEGER (0..1023) OPTIONAL, -- Need S txConfig ENUMERATED {codebook, nonCodebook} OPTIONAL, -- Need S dmrs-UplinkForPUSCH-MappingTypeA SetupRelease { DMRS-UplinkConfig } OPTIONAL, -- Need M dmrs-UplinkForPUSCH-MappingTypeB SetupRelease { DMRS-UplinkConfig } OPTIONAL, -- Need M pusch-PowerControl PUSCH-PowerControl OPTIONAL, -- Need M frequencyHopping ENUMERATED {intraSlot, interSlot} frequencyHoppingOffsetLists SEQUENCE (SIZE (1..4)) OF INTEGER (1.. maxNrofPhysicalResourceBlocks-1) .... frequencyHoppingForDCI-Format0-2-r16 CHOICE { pusch-RepTypeA ENUMERATED {intraSlot, interSlot}, pusch-RepTypeB ENUMERATED {interRepetition, interSlot} } OPTIONAL, -- Need S frequencyHoppingOffsetListsForDCI-Format0-2-r16 SetupRelease { FrequencyHoppingOffsetListsForDCI-Format0-2-r16} OPTIONAL, -- Need M ...
- 当 PUSCH的传输是由Configured Grant 调度,通过configuredGrantConfig中的参数 frequencyHopping 进行配置。
ConfiguredGrantConfig ::= SEQUENCE { frequencyHopping ENUMERATED {intraSlot, interSlot} OPTIONAL, -- Need S ... configuredGrantTimer INTEGER (1..64) OPTIONAL, -- Need R rrc-ConfiguredUplinkGrant SEQUENCE { timeDomainOffset INTEGER (0..5119), timeDomainAllocation INTEGER (0..15), frequencyDomainAllocation BIT STRING (SIZE(18)), antennaPort INTEGER (0..31), dmrs-SeqInitialization INTEGER (0..1) OPTIONAL, -- Need R precodingAndNumberOfLayers INTEGER (0..63), srs-ResourceIndicator INTEGER (0..15) OPTIONAL, -- Need R mcsAndTBS INTEGER (0..31), frequencyHoppingOffset INTEGER (1.. maxNrofPhysicalResourceBlocks-1) OPTIONAL, -- Need R ...
Frequency Hopping offset 配置
FH offset的配置可以分为两种情况。
-
Case 1:配置一个offsetlist,即多个offset值,由DCI field中的Frequency Domain Resource Assignment中的MSB bit 指示具体使用哪个值(指示位的大小取决于BWP的宽度)。
-
当激活BWP小于50PRBs,在list中配置两个offset值(MSB的指示bit 占据1位)。
-
当激活BWP大于或等于PRBs,在list中配置四个offset值 (MSB的指示bit 占据2位)。
FH list值的配置方法如下所示
- 当PUSCH由RAR UL grant, fallbackRAR UL grant 或者TC-RNTI加扰的DCI format 0_0调度,其offset值按照38.213中8.3的章节取值。
- 在PUSCH 频域分配Type 1的前提下,当PUSCH由DCI format 0_0/0_1或者是由DCI format 0_0/0_1激活的Configured grant type 2,FH offset的list由 PUSCH-Config的 frequencyHoppingOffsetLists 配置。
- 在PUSCH 频域分配Type 1的前提下,当PUSCH由DCI format 0_2或者是由DCI format 0_2激活的Configured grant type 2,FH offset的list由 PUSCH-Config的 frequencyHoppingOffsetLists-ForDCIFormat0_2 配置。
-
-
Case 2: 配置单个offset的值。
- 当PUSCH由Configured UL grant type 1调度时,FH的值由rrc-ConfiguredUplinkGrant中的frequencyHoppingOffset。
根据offset计算跳频的RB位置
- Case 1: Intra-slot FH,每个hop起始RB如下所示
i = 0 i=0 i=0代表第一个hop, i = 1 i=1 i=1代表第二个hop。 R B s t a r t RB_{start} RBstart 是UL BWP的起始RB, R B o f f s e t RB_{offset} RBoffset是两个hop之间的偏移值。第一个hop中的符号数目为 ⌊ N s y m b P U S C H , s ⌋ \lfloor N^{PUSCH,s}_{symb}\rfloor ⌊NsymbPUSCH,s⌋,第二个hop中的符号数目为 N s y m b P U S C H , s − ⌊ N s y m b P U S C H , s ⌋ N^{PUSCH,s}_{symb}-\lfloor N^{PUSCH,s}_{symb}\rfloor NsymbPUSCH,s−⌊NsymbPUSCH,s⌋,其中 N s y m b P U S C H , s N^{PUSCH,s}_{symb} NsymbPUSCH,s是一个slot中PUSCH占据的OFDM符号数目。 - Case 2: Inter-slot FH,每个hop起始start
其中 n s μ n^{\mu}_{s} nsμ是无线帧内的slot编号,其他字母含义与Intra-slot相同。注释
- 在学习PUSCH repetition type A之前,应该先学习PUSCH resource allocation的时频域分配,NR中slot的上下行slot配置等相关知识。
- 笔者第一篇正式撰写的3gpp提案与PUSCH repetition type A有关,故写下此文,聊表纪念。
-
上行参考信号DMRS for PUSCH
2022-05-16 18:15:03而且PUSCH的DMRS和PDSCH的DMRS在时频域位置的处理算法以及相关front-loaded DMRS和additional DMRS的长度算法以及处理流程方面都很类似,如果大家能把这两者结合起来看,会很容易理解。 如果PUSCH没有使用...Sequence generation
上行PUSCH 的DM-RS和PDSCH的DM-RS很相似,也分为两类: front-loaded DMRS和additional DMRS。而且PUSCH的DMRS和PDSCH的DMRS在时频域位置的处理算法以及相关front-loaded DMRS和additional DMRS的长度算法以及处理流程方面都很类似,如果大家能把这两者结合起来看,会很容易理解。如果PUSCH没有使用transform precoding,序列r(n)按照下式生成:如果PUSCH使用transform precoding,序列r(n)按照下式生成:PUSCH的DMRS hopping模式由以下信令决定:- 对于传输msg3的PUSCH, disable sequence hopping, group hopping enable还是disable由信令PUSCH-Common中的IE:groupHoppingEnabledTransformPrecoding确定:
- 对于其他的PUSCH传输,sequence hopping和group hopping的enable或者disable由信令 DMRS-UplinkConfig中的IE:sequenceHopping和sequenceGroupHopping分别确定;如果这两个IE都不存在,使用与msg3相同的hopping模式:
- PUSCH DMRS不能同时使用sequence hopping和group hopping。
Precoding and mapping to physical resources序列r(m)根据以下条件映射为中间量:
- 如果没有开启transform precoding:
- 如果开启了tranform precoding:
以上公式中的和
由Table 6.4.1.1.3-1和6.4.1.1.3-2确定:
中间量按照如下公式映射到物理资源上:
DM-RS符号的位置由和PUSCH持续时间
确定:
- 根据Tables 6.4.1.1.3-3和6.4.1.1.3-4,对于PUSCH映射类型A,如果没有使用intra-slot跳频,持续时间
指的是被调度的PUSCH传输所在的slot的第一个OFDM符号到被调度的PUSCH资源的最后一个OFDM符号之间的时长,或者,
- 根据Tables 6.4.1.1.3-3和6.4.1.1.3-4,对于PUSCH映射类型B,如果没有使用intra-slot跳频,持续时间
指的是被调度的PUSCH资源在时域上的持续时长,或者,
- 如果使用了intra-slot跳频,
为每一跳的持续时间,从Table 6.4.1.1.3-6中获取;
- 如果没有在信令DMRS-UplinkConfig中配置IE:maxLength,此时PUSCH DM-RS为single-symbol DMRS;
- 如果信令DMRS-UplinkConfig中配置了IE:maxLength,并且maxLength =‘len2’,则PUSCH DM-RS是single-symbol还是double-symbol DM-RS由DCI 0_1中的“Antenna ports”字段确定(对于动态调度的PUSCH)或者由configured grant configuration(对于半静态调度的PUSCH);
- 如果信令DMRS-UplinkConfig中IE:dmrs-AdditionalPosition的数值没有设置为‘pos0’并且使能了intra-slot跳频,则对于每一跳应认为dmrs-AdditionalPosition的数值都等于‘pos1’,并使用dmrs-AdditionalPosition=‘pos1’从Table 6.4.1.1.3-6中获取相关信息。
对于PUSCH映射类型A,
- 只有当信令ServingCellConfigCommon中IE:dmrs-TypeA-Position的值等于‘pos2’时才支持dmrs-AdditionalPosition = ‘pos3’
- 只有当信令ServingCellConfigCommon中IE:dmrs-TypeA-Position的值等于‘pos2’时才支持Table 6.4.1.1.3-4中的
=4
下面我们也为PUSCH的DMRS做一个梳理总结:1. 上行PUSCH DMRS分为两类:front loaded DMRS和additional DMRS:- front loaded DMRS:对于PUSCH映射类型A, front loaded DMRS的起始位置 由信令ServingCellConfigCommon中IE:dmrs-TypeA-Position确定
- additional DMRS:additional DMRS的起始位置要通过Table 6.4.1.1.3-3和Table 6.4.1.1.3-4获取。
下面我们举2个例子来说明:
2. 上行PUSCH DMRS有两种配置类型:configuration Type 1和configuration Type 2,这两种配置方式决定了DMRS在频域上的不同位置:- 对于没有使能transform precoding的场景:
- 对于使能transform precoding的场景:
可以看到,在没有使能transform precoding的场景中,PUSCH DMRS configuration Type 1和Type 2在频域上位置的计算公式是不同的;而在使能了transform precoding的场景中,PUSCH DMRS configuration Type 1和Type 2在频域上计算公式是相同的。从Table 6.4.1.1.3-1和6.4.1.1.3-2可以看出,不同的配置类型对应不同的天线端口,CDM group在不同的配置类型和天线端口中数值也各有差异;而PUSCH DMRS在时域上的位置不仅和PDSCH映射类型有关系,还和是否使能跳频功能有关。下面我们举例说明:例1:假设PUSCH映射类型A,dmrs-TypeA-Position = pos2, dmrs-AdditionPosition = pos0(即没有additional DMRS),跳频功能关闭,single-symbol DMRS;对于tranform precoding功能关闭,configuration type 1的场景:
对于tranform precoding功能关闭,configuration Type 2的场景:
对于tranform precoding功能打开, configuration type 1的场景:
对于tranform precoding功能打开, configuration type 2的场景(
):
(N.B. 由于CDM group 0,1,2在频域上都占用子载波2,4,6,8,10, 而通过时域码分+频域码分最多只能区别一个CDM group里面不同端口的DMRS符号,因此此处必须在时域上把三个DMRS group分开以避免配置在相同的RE上造成相互干扰。)
3. PUSCH DMRS的天线端口和single-symbol DMRS和double-symbol DMRS的关系我们前面提到过“如果信令DMRS-UplinkConfig中的IE:maxLength数值为‘len2’, 则是single-symbol DMRS还是double-symbol DMRS由相关DCI确定”,这其实是通过上行DCI中的‘antenna port(s)’字段来指定的。查阅38.21.2我们知道上行DCI格式一共有2个:DCI format 0_0和DCI format 0_1。DCI 0_0里面没有‘antenna port(s)’字段,DCI 0_1中存在‘antenna port(s)’字段。我们先来看看DCI 0_0,因为没有该字段,所以3GPP做了以下规定:- 对于由DCI 0_0调度的PUSCH传输,如果加扰DCI 0_0的RNTI为C-RNTI,PUSCH DMRS为single-symbol front loaded DMRS, 该DMRS类型为configuration type 1,DMRS端口为0,并且该PUSCH相关的时频资源不存在于任何携带DMRS的OFDM符号中(除非PUSCH在时域上的长度
2个OFDM符号,并且transform precoding是关闭的)
- 对于由DCI0_0调度的PUSCH传输,如果加扰DCI0_0的RNTI为CS-RNTI,PUSCH DMRS为single-symbol front loaded DMRS, DMRS类型由信令configuredGrantConfig中IE:dmrs-Type指定,DMRS端口为0,并且该PUSCH相关的时频资源不存在于任何携带DMRS的OFDM符号中(除非PUSCH在时域上的长度
2个OFDM符号,并且transform precoding是关闭的)。
- 对于由DCI0_0调度的PUSCH传输,如果没有开启跳频了,UE认为additional DMRS相关信令dmrs-AdditionalPosition=‘pos2’,并且最多有2个additional DMRS可以在PUSCH中传输;如果开启了跳频,UE认为dmrs-AdditionalPosition=‘pos1’,并且最多只有1个additional DMRS可以在PUSCH中传输:
然后我们再看看DCI 0_1,在DCI 0_1中的‘antenna ports’字段定义如下:- Antenna ports - 该字段长度定义如下:
- 2 bits(Table 7.3.1.1.2-6),如果tranform precoder开启, dmrs-Type = 1, maxLength = 1
- 4 bits(Table 7.3.1.1.2-7),如果tranform precoder开启, dmrs-Type = 1, maxLength = 2
- 4 bits (Table 7.3.1.1.2-12/13/14/15),如果tranform precoder关闭, dmrs-Type = 1, maxLength = 2
- 4 bits (Table 7.3.1.1.2-16/17/18/19),如果tranform precoder关闭, dmrs-Type = 2, maxLength = 1
- 3 bits (Table 7.3.1.1.2-8/9/10/11),如果tranform precoder关闭, dmrs-Type = 1, maxLength = 1
- 5 bits (Table 7.3.1.1.2-20/21/22/23),如果tranform precoder关闭, dmrs-Type = 2, maxLength = 1
以上Table中的‘number CDM groups without data’的数值1,2,3分别指的是CDM groups {0}, {0,1}和{0,1,2},这里的‘CDM group without data’指的就是用于DM-RS的RE不能同时用于PUSCH。从以上各表可以看出,第一列'Value'的数值确定了DMRS的端口号以及CDM group,在知道了这两个信息后,通过Table 6.4.1.1.3-1和6.4.1.1.3-2就可以知道DMRS对应的和
,从而获取DMRS映射到 频域资源上的位置和方式。DMR在时域上的位置是根据DCI中PUSCH所持续的OFDM符号数量查找Table 6.4.1.1.3-3,6.4.1.1.3-4和6.4.1.1.3-6得到的。
4. 下面我们再介绍一下PUSCH映射类型A和B,与PDSCH映射类型类似,PUSCH映射类型也是通过信令配置给UE的: -
UCI on PUSCH
2021-01-28 21:25:06UCI on PUSCH From 38.213 v15.10.0 9.3 UCI reporting in PUSCH 38.212 v15.10.0 6.3.2.4 Rate matching Matlab 官网说明 https://www.mathworks.com/help/5g/ug/nr-uci-multiplexing-on-pusch.html UCI 简介 -
UCI on PUSCH 协议角度解析
2022-02-17 12:47:07NR Rel-15/16学习笔记 UCI on PUSCH Introduction Background Relationship with other sections Assumption for this article 6.2.7 Data and control multiplexing Input sequence Notation Before Step 1-6 ... -
通信标准3之PUSCH频率域资源分配
2022-04-11 10:47:16NR通信标准解读系列。PUSCH频率域资源分配。 -
5g-nr-pusch-master.zip_5G_5G matlab_5G-PUSCH_5g master_5g pusch
2022-07-14 06:34:395G is a project of upcoming technologies in the future -
5G/NR PRACH、PUSCH功率控制
2020-12-24 20:33:48= (-100 + 8) + 0 + 10lg(2*3) + *1 + 0 + = -100 + 8 + 8 + 105 + 0 + 2 = 23dbm (3)PUSCH功率 在未配置P0-PUSCH-AlphaSet时,PUSCH功率计算与Msg3相似,在配置P0-PUSCH-AlphaSet后,如果未配置SRI-PUSCH... -
UCI和数据复用在pusch上传输---数据和UCI位置的摆放(第三部分)
2021-09-22 21:55:55while mACKcount(i) (i) if sym > nPUSCHsymall % Check for the symbol number greater than the number % of PUSCH allocated symbols in each hop and avoid out % of bounds indexing break; end if mUCI(sym) ... -
物理五大信道浅聊PRACH、PUCCH、PUSCH、PDCCH、PDSCH
2022-04-02 16:53:29总算知道点物理信道PRACH/PUCCH/PUSCH/PDCCH/PDSCH -
TS 36.211 V12.0.0-上行(2)-PUSCH
2022-04-10 21:14:43从MAC经过传输信道传输到PHY层的数据需要经过下列过程才会形成表示PUSCH的基带信号: 加扰 加扰比特调制,生成复数值符号 复数值调制符号映射到一个或多个传输层 转换预编码以生成复数值符号 复数值符号预编码 ... -
通信标准2之PUSCH非动态传输 Configured Grant Type 1 和 Type 2
2022-04-05 19:39:23NR标准解读系列。PUSCH非动态资源分配。 -
UCI和数据复用在pusch上传输---第一部分
2021-09-21 19:09:55这些uci信息可以通过PUCCH传输,也可以通过pusch传输(*这块有了疑问,sr就是在pusch调度前,ue需要发送sr,但是当sr调度基站收不到的时候,会通过重新接入,然后msg3携带的bsr来代替,正常sr是不能通过pusch发送的... -
NR/5G ~ UCI Multiplexing on PUSCH
2022-05-04 15:27:24文章介绍了几个不同的UCI Multiplexing on PUSCH的步骤。 UCI包括HARQ-ACK,CSI和SR,在PUCCH信道上发送或者复用到PUSCH上发送。CSI包括在PUSCH信道上发送的非周期CSI,PUCCH信道上发送的周期CSI,以及在PUCCH... -
5G NR PUSCH non-codebook SRS/DMRS
2022-05-18 11:10:55最近在看Non-codebook PUSCH时,看到这么一段话: The UE shall perform one-to-one mapping from the indicated SRI(s) to the indicated DM-RS ports(s) and their corresponding PUSCH layers {0 … ν-1} The UE... -
5G NR PDSCH、PUSCH资源分配
2020-06-17 20:07:00通俗易懂讲解5G NR PDSCH、PUSCH资源分配。 -
LTE上行共享信道PUSCH解调参考信号
2011-07-19 16:19:10用于LTE上行共享信道PUSCH解调参考信号生成及资源映射 无线通信系统程序 -
UCI和数据复用在pusch上传输(第六部分)---ldpc编码
2021-09-24 16:33:07end **此处会对TB块进行crc的添加,具体添加crc的过程已经在上一篇文章 《UCI和数据复用在pusch上传输(第五部分)---polar编码》分享过了, 这里就不在做复述。** 2 graph选择 % LDPC base graph selection if A |... -
[4G&5G专题-40]:物理层-下行共享信道PDSCH和上行共享信道PUSCH
2021-02-17 16:14:41第1章 NR 下行共享信道PDSCH和PUSCH概述 1.1PUCCH和PUSCH概述 1.2 NR PUCCH和PUSCH在物理层信道中的位置 第2章 NR PUCCH和PUSCH信道传输信息的内容 2.1PUCCH 2.2PUSCH 2.3相位追踪信号PT-RS 第3章 NR PDSCH与... -
NR/5G - PUSCH scheduled by RAR UL grant
2020-06-02 21:40:25首先澄清一个概念,之所以叫RAR scheduled PUSCH,而不是称为MSG3,因为在38.321协议中有有准确地MSG3的定义,只有竞争性随机接入中RAR调度的PUSCH才称为MSG3,而非竞争性随机接入中RAR调度的PUSCH不能称之为MSG3。... -
NR/5G - HARQ-ACK复用到PUSCH
2021-10-29 20:56:16●如果为configuredGrant调度或者调度PUSCH的DCI中没有DAIfield(DCIformat0-0中没有DAIfield),则判断PUCCHresource和PUSCH在时域是否有重叠,如果有重叠,则HARQ-ACK复用到PUSCH上发送 ●如果调度的PUSCH的DCI中... -
5G/NR - PUSCH DMRS
2020-03-09 19:25:271.PUSCHDMRS序列 PUSCHDMRS序列在PUSCH配置为Transformprecodingenabled和disabled时候使用的序列不一样。 Transformprecodingdisabled 可见此时PUSCH的D... -
SR和PUSCH冲突处理 & DL SPS的一些说明
2022-04-13 15:14:45在文章SR和PUSCH冲突处理中提到的下面的第二点,有同学提出有异议,需要更新下理解。 所以,针对上文中提到的处理顺序,个人理解如下 1. 先对所有UCI进行multiplexing操作; 2. 在multiplexing之后产生的PUCCH,...