LTE物理层总结二-1

更新时间:2024-01-28 23:55:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

4、各子功能模块介绍

4.1 信道编码 4.1.1 信道编码综述

4.1.1.1 信道编码的作用、分类以及LTE中采用的信道编码

(1) 信道编码的作用:

信道编码是为保证通信系统的传输可靠性,克服信道中的噪声和干扰而专门设计的一类抗干扰技术和方法。

(2) 信道编码从功能上看有3类编码: a. 仅具有差错功能的检错码,如循环冗余校验CRC码、自动请求重传ARQ

等;

b. 具有自动纠正差错功能的纠错码,如循环码中的BCH、RS码及卷积码、

级联码、Turbo码等;

c. 具有既能检错又能纠错功能的信道编码,最典型的是混合ARQ,又称为

HARQ。

从结构和规律上分两类:

a. 线性码:监督关系方程是线性方程的信道编码称为线性码,目前大部分

实用化的信道编码均属于线性码,如线性分组码、线性卷积码是经常采用的信道编码;

b. 非线性码:一切监督关系方程不满足线性规律的信道编码均称为非线性

码。

(3)LTE中采用的信道编码信道编码有2种:Turbo 、咬尾卷积码。

(4)LTE中不同的物理信道都唯一的对应于Turbo 、咬尾卷积码中的一种,只要物理信道确定,则其编码方式唯一确定。 4.1.1.2 LTE中信道编码的一般流程

物理信道从上层接收到的传输块 TB(transport block),每个子帧最多传输一个TB,如图Figure 5.2.2-1其编码的步骤为: ? TB添加CRC校验 ? 码块分段及码块CRC校验添加 ? 数据和控制信息的信道编码 ? 速度匹配 ? 码块级联

? 数据和控制信息复用 ? 信道交织

Figure 5.2.2-1: Transport channel processing

说明:这是最复杂的编码流程、一般物理信道的编码流程都是它的简化版。

4.1.1.3 Tail Biting卷积码和Turbo编码是和物理信道一一对应关系

Table 5.1.3-1: Usage of channel coding scheme and coding rate for TrCHs TrCH UL-SCH DL-SCH PCH MCH BCH

Coding scheme Turbo coding Tail biting convolutional coding 咬尾卷积码 Coding rate 1/3 1/3 Table 5.1.3-2: Usage of channel coding scheme and coding rate for control information

Control Information Coding scheme Tail biting convolutional coding 咬尾卷积码 Block code 块编码 Repetition code 重复编码 Block code 块编码 Tail biting convolutional coding 咬尾卷积码 Coding rate 1/3 DCI CFI HI 1/16 1/3 variable UCI 1/3

4.1.2 TB添加CRC校验

1. 作用:错误检测

原理:它是利用除法及余数的原理来作错误侦测(Error Detecting)的。实际应用时,发送装置计算出CRC值并随数据一同发送给接收装置,接收装置对收到的数据重新计算CRC并与收到的CRC相比较,若两个CRC值不同,则说明数据通讯出现错误。即在传输块TB的尾部添加 24bit 校验位,24位校验位是根据该传输块进行CRC

计算得到,在接收端可以将信息码和CRC码一起除以生成多项式,若余数不为零则传送错误。

2. 具体过程: 上行TB的错误检测是通过循环冗余校验实现的,整个TB被用于计算CRC奇偶校验比特。

记输入的TB传输块的比特流为a0,a1,a2,a3,...,aA?1,记奇偶校验比特为p0,p1,p2,p3,...,pL?1。A表示传输块(TB)的大小,L表示校验位的数目。最低信息位a0映射到传输块的最高有效位,具体描述见Section 6.1.1 of [5]。

CRC校验位产生的生成多项式为,这一步使用的是L=24的多项式gCRC24A(D):

- gCRC24A(D) = [D24 + D23 + D18 + D17 + D14 + D11 + D10 + D7 + D6 + D5 + D4 + D3 + D + 1] and; - gCRC24B(D) = [D24 + D23 + D6 + D5 + D + 1] for a CRC length L = 24 and; - gCRC16(D) = [D16 + D12 + D5 + 1] for a CRC length L = 16. - gCRC8(D) = [D8 + D7 + D4 + D3 + D + 1] for a CRC length of L = 8.

CRC使用的是系统循环码,其整体可表示为多项式:

a0DA?23?a1DA?22?...?aA?1D24?p0D23?p1D22?...?p22D1?p23

该多项式满足被对应L=24的多项式, gCRC24A(D) 或 gCRC24B(D)除之后,余数为为0。

a0DA?15?a1DA?14?...?aA?1D16?p0D15?p1D14?...?p14D1?p15

yields a remainder equal to 0 when divided by gCRC16(D), and the polynomial: a0DA?7?a1DA?6?...?aA?1D8?p0D7?p1D6?...?p6D1?p7 yields a remainder equal to 0 when divided by gCRC8(D).

添加CRC之后的比特流可表示为 b0,b1,b2,b3,...,bB?1, 其中 B = A+ L。 ak和 bk 的关系为: bk?ak for k = 0, 1, 2, …, A-1

bk?pk?A

for k = A, A+1, A+2,..., A+L-1.

传输块TB的CRC添加模块的输入参数为: ? a0,a1,a2,a3,...,aA?1,比特流

? gCRC24A(D) = [D24 + D23 + D18 + D17 + D14 + D11 + D10 + D7 + D6 + D5 + D4 + D3 + D + 1]生成多项式,已定 传输块TB的CRC添加模块的输出参数为:

a0DA?23?a1DA?22?...?aA?1D24?p0D23?p1D22?...?p22D1?p23,输出比特流

4.1.3 码块分段及码块CRC校验添加

如果传输块TB添加24bits CRC后,如果长度超过 6144位,则需要分段,分成多个长度小于6144的码块,每个码块的长度根据协议重新定义(不一定长度相等)。

然后在对每个码块重新进行CRC计算添加 24bits 校验位,与上步不同的是使用的CRC生成多项式为

gCRC24B(D) = [D24 + D23 + D6 + D5 + D + 1] for a CRC length L = 24

具体过程如下:

记输入码块分段的比特流为b0,b1,b2,b3,...,bB?1 ,其中 B=L+A是传输块添加CRC后的总长。如果B的长度大于一个传输块的最大值Z=6144,则码块必须分段,并对每一个分段后的码块进行CRC冗余添加。

在下列计算中如果填充比特F大于0,则填充比特添加到第一个码块的开始端。

如果B小于40,填充比特添加到码块的开始位置。 在编码器的输入端,填充比特将被设置为空。 码块分段的过程如下:

1. 传输块分段的块数C的计算

if B?Z

L = 0

Number of code blocks: C?1 B??B else

L = 24

Number of code blocks: C??B/?Z?L??. ---向上取整,得到码块数

B??B?C?L ----码块分段后,还必须对每个码块添加24位CRC,其最后的总长是B`

end if

2. 确定每个码块的长度

在得到需要分段的码块数后,即码块数C已经确定,接下就要确定每个码块的长度

记码块编号为cr0,cr1,cr2,cr3,...,cr?Kr?1? , 其中 r 是码块号,Kr 是第r个码块所包含的比特数目。则各个码块的长度计算过程如下:

第一个码块的长度: K?= minimum K in table 5.1.3-3 such that

----- 即满足 查表

C?K?B?,在表

C?K?B?

5.1.3-3中的最小的K的值,

if C?1 -----若C=1,即码块的长度K等于传输块的长度(加CRC后)

the number of code blocks with length K? is C?=1, K??0,

C??0

else if C?1 ---若C>1

第二个码块的长度:K?,为表中满足K?K?的最大的值,查表 Second segmentation size: K?= maximum K in table 5.1.3-3 such that K?K?

?K?K??K?

-----第一块和第二块的长度差值

长度为K?的码块的个数:

Number of segments of sizeK?: C??? 长度为K?的码块的个数:

Number of segments of sizeK?: C??C?C?. end if

?C?K??B???. ?K??

需要填充的比特数:

Number of filler bits: F?C??K??C??K??B?

填充在第0个编号的码块的的前F个位置,填充空符号 for k = 0 to F-1

c0k??NULL?

-- Insertion of filler bits

end for

从第0个码块的第F个位置开始,按增序依次将数据填充到各个分段后的码块(码块增序) 码块顺序重排,先填充头C_个码块,前C_个码块的长度为K?,然后再是C+个码块(长度为K?) 注意:每个码块的后24位必须预留给CRC校验位,数据不能占用。 k = F s = 0

for r = 0 to C-1 if r?C?

else

Kr?K? Kr?K?

end if

每个码块必须添加CRC校验位,位置在每个码块的后24位,生成多项式为gCRC24B(D) while k?Kr?L

crk?bs k?k?1

s?s?1

end while if C >1 The sequence

cr0,cr1,cr2,cr3,...,cr?Kr?L?1?

is used to calculate the CRC

parity bits pr0,pr1,pr2,...,pr?L?1? according to subclause 5.1.1 with the generator polynomial gCRC24B(D). For CRC calculation it is assumed that filler bits, if present, have the value 0. whilek?Kr

crk?pr(k?L?Kr)

k?k?1

end while end if k?0 end for

这样之后,便形成了总数目为C的码块,分成两部分,C?C??C?,码块的编号的顺序为0,1,…,C?-1,C?,…,C?+C?,前C?个码块的长度为K?,后C?个码块的长度为K?。

出来的码块cr0,cr1,cr2,cr3,...,cr?Kr?1?,其中r表示码块号,Kr 表示该码块的长度K?或者是K?。

码块分段的输入参数:

? b0,b1,b2,b3,...,bB?1,B=L+A,L=24,即TB添加CRC后的比特流,

a0DA?23?a1DA?22?...?aA?1D24?p0D23?p1D22?...?p22D1?p23,输出比特流 ? gCRC24B(D) = [D24 + D23 + D6 + D5 + D + 1] for a CRC length L = 24 ,生成多项

式 码块分段的输出参数:

? cr0,cr1,cr2,cr3,...,cr?Kr?L?1?,r=0….C

4.1.4 数据和控制信息的信道编码

4.1.4.1 数据的信道编码(Turbo编码和咬尾卷积码)

4.1.4.1.1

Turbo编码

Turbo 码:并行级联卷积码,2个8状态子编码器1个Turbo码内交织器

xk1st constituent encoderzkckDDDOutputInput Turbo code internal interleaverOutput2nd constituent encoderz?k?ckDDD?xk Turbo编码器的8状态子编码器的传递函数为:

?g(D)?G(D) = ?1,1?,

?g0(D)?其中,g0(D) = 1 + D2 + D3, g1(D) = 1 + D + D3.

编码开始时,8状态子编码器的移位寄存器的初始值置0。 Turbo编码器的输出为如下三个比特流: (0)dk?xk

(1)dk?zk (2)dk?z?k

尾比特是要在信息比特编码之后添加的,要获得尾比特 (作用:使编码器回到初始状态0.)

首先,第二个子编码器(RSC)禁用,第一个子编码器中的开关打到低端和虚线相连,在编码器的输入端依次3个比特,这时按照编码器中的反馈及相关的运算可以依次得到6比特的输出

然后,第一个子编码器(RSC)禁用,第二个子编码器中的开关打到低端和虚线相连,在编码器的输入端依次3个比特,这时按照编码器中的反馈及相关的运算可以依次得到6比特的输出

将得到的12个比特的输出按照协议中给定的顺序排列便可以得到最终的尾比特输出。

(0)(0)(0)(0)??dK?xK, dK?1?zK?1, dK?2?xK, dK?3?zK?1

(1)(1)(1)(1)??dK?zK, dK?1?xK?2, dK?2?zK, dK?3?xK?2 (2)(2)(2)(2)??dK?xK?1, dK?1?zK?2, dK?2?xK?1, dK?3?zK?2

具体过程:

码块的下一步处理就是信道编码,cr0,cr1,cr2,cr3,...,cr?Kr?1?,r表示码块数,Kr表示码块的长度,码块总数为C,每一个码块将进行 turbo 编码。

i)(i)(i)(i)i?0,1, and 2经过编码器编码以后,比特流可以表示为dr(i0),dr(1,dr2,dr3,...,dr?Dr?1?,表示三个编码后的比特流,Dr表示第i个编码流的长度,Dr?Kr?4。

Turbo编码过程为: 1. Turbo编码器 上行共享信道Turbo编码器采用的是并行级联卷积编码,它使用的是两个8状态子编码器

和一个Turbo码内交织器,Turbo码的编码效率是1/3。Turbo编码器的结构图如下:

?g(D)? Turbo编码器的8状态子编码器的传递函数为: G(D) = ?1,1?,

?g0(D)?其中,g0(D) = 1 + D2 + D3, g1(D) = 1 + D + D3.

编码开始时,8状态子编码器的移位寄存器的初始值置0。 Turbo编码器的输出为如下三个比特流: (0)dk?xk

(1)dk?zk

(2)dk?z?k

for k?0,1,2,...,K?1.

如果输入的码块是第0个码块,又前面我们知道,第0个码块中可能存在F个空填充比特。若存在,则将第0个码块的前F个比特置0输入到编码器,即

(0)ck, = 0, k = 0,…,(F-1)。同时其输出应该设置为dk??NULL?, k = 0,…,(F-1) 和

(1)dk??NULL?, k = 0,…,(F-1) 。

记输入到Turbo的编码器的比特流表示为c0,c1,c2,c3,...,cK?1,第一和第二个编

?,z1?,z??,...,z?码器输出比特流可表示为,z0,z1,z2,z3,...,zK?1和z02,z3K?1。Turbo内部交

?,c1?,...,c?织器输出表示为c0K?1,交织器的输出比特送入第二个8状态的子编码器。

If the code block to be encoded is the 0-th code block and the number of filler bits is greater than zero, i.e., F > 0, then the encoder shall set ck, = 0, k = 0,…,(F-1) at its

(0)(1)input and shall set dk??NULL?, k = 0,…,(F-1) and dk??NULL?, k = 0,…,(F-1) at its output.

The bits input to the turbo encoder are denoted byc0,c1,c2,c3,...,cK?1, and the bits output from the first and second 8-state constituent encoders are denoted by

?,z1?,z??,...,z?z0,z1,z2,z3,...,zK?1andz02,z3K?1, respectively. The bits output from the turbo

?,c1?,...,c?code internal interleaver are denoted byc0K?1, and these bits are to be the input

to the second 8-state constituent encoder.

xk1st constituent encoderzkckDDDOutputInput Turbo code internal interleaverOutput2nd constituent encoderz?k?ckDDD?xk

Figure 5.1.3-2: Structure of rate 1/3 turbo encoder (dotted lines apply for

trellis termination only) 2. turbo码尾比特的添加

当一个码块的所有信息位编码完成时,将移位寄存器的值反馈到编码器输入端继续进行编码,进行3次编码,3*4=12位比特,得到的尾比特添加到信息位编码的后面。

前三位尾比特用来结束第一个子编码器,如上图,将输入接口到虚线上,得到2*3=6位输出,在第一个子编码器进行尾比特编码时,第二个编码器停止工作。第一个编码器结束后,进行第二个编码器的尾比特生成,同样得到6bits信息。这12位信息的最终在输出端可表示如下顺序:

(0)(0)(0)(0)??dK?xK, dK?1?zK?1, dK?2?xK, dK?3?zK?1

(1)(1)(1)(1)??dK?zK, dK?1?xK?2, dK?2?zK, dK?3?xK?2 (2)(2)(2)(2)??dK?xK?1, dK?1?zK?2, dK?2?xK?1, dK?3?zK?2

3. Turbo码交织器

Turbo码的内交织器输入比特可表示为c0,c1,...,cK?1,其中K是输入码块的比

?,c1?,...,c?特的数目。Turbo码内交织器的输出比特表示为c0K?1。

输入比特和输出比特之间的关系是:

ci??c??i?, i=0, 1,…, (K-1)

其中,输出序号i和输出序号?(i)的关系满足如下二次形式,即: ?(i)??f1?i?f2?i2?modK

参数f1 和f2取决于块的大小K值,如下表所示: Table 5.1.3-3: Turbo code internal interleaver parameters

Table 5.1.3-3: Turbo code internal interleaver parameters

i Ki 1 40 2 48

f1

f2

3 7

10 12

3 56 19 42 4 64 7 16 i 48 49 50 5Ki f1 f2 i Ki 416 25 52 95 112

0

424 51 1096 115

6 2

432 47 72 97 118

4

440 91 1198 121

f1 f2

67 14

0 35 72 19 74 39 76 i 142 143 144 14Ki 3200 3264 3328 339f1 f2

11241 0 44203 4 51 10

4 51 21

5 72

6 80 7 88

8 96 9 10

4 1110 2 1121 0 1122 8 1133 6 1144 4 1155 2 1166 0 1167 8 1178 6 1189 4 2190 2 2201 0 2202 8 2213 6 222

1 7

18

5448 2 11 20 5456 3 5

22

5464 4 11 24 5472 5 7

26

5480 6 41 84 5488 7 1090 5496 3

8 15 32 5504 9 9

34

6512 0 17 10

6528 8 1 9 38 6544 2 21 12

6560 0 3 1084 6576 1

4 21 44 6592 5 57 46 6608 6 23 48 6624 7 13 50 6640 8 27 52 6656 9 11 36 7672 0 27 56

7

688 0 6

29 1699 124

8 8

29 1110128

4 0 0

2458 10131

7 1 2 29 1110134

8 2 4

89 1810137

0 3 6

91 1210140

2 4 8

1562 10144

7 5 0 55 84 10147

6 2

31 64 10150

7 4

17 66 10153

8 6

35 68 10156

9 8

224211160

7 0 0 0 65 96 11163

1 2

19 74 11166

2 4

37 76 11169

3 6

41 2311172

4 4 8

39 80 11176

5 0

1882 11179

5 6 2 43 2511182

2 7 4

21 86 11185

5 2 19 78 143456 6 1924143529 0 7 0 21 82 143588 4 2125143641 2 9 8 21 86 153710 2 43 88 153771 6 1460 153849

2 0 45 92 153903 4 49 84

153966 4 8 71 48 154035 2 13 28 154096 6 17 80 154167 0 25 10

154222 8 4 1810154283 4 9 8 55 95

164354 0 2 1296 164417

1 6 27 11

164480 2 0 29 11

164542 3 4 29 11

164604 4 8 57 11

16467

2 45191 2 25227 0 57 33

6 31223 8 27231 2 17239 6 33121 0 36243 4 37245 8 12167 8 31 64 33 13

0 43 26

4 33 13

4 47407 8 35 13

8 23283 0 35147 2 33487 0 37 14

4 4 1 8 6 6 5 2 22385 58 7704 1544 1118845 35164735 2 2 5 9 8 4 6 6 22429 60 7720 79 121219231 12164806 0 3 0 0 0 0 7 0 22433 62 7736 1392 1219559 61164867 8 4 9 1 2 0 8 4 22515 32 7752 23 94 121981812164928 6 5 2 4 5 4 9 8 22617 197768 2148 122011142174999 4 8 6 7 3 6 3 0 0 2 32733 68 7784 25 98 1220431 64 175050 2 7 4 8 1 6 32810217800 17 80 1221117 66 175121 0 3 0 8 5 2 2 0 32819 36 7816 1210122171713175182 8 9 7 2 6 6 1 6 3 4 32919 74 8832 25 52 122242042175243 6 0 7 0 9 0 4 8 33037 76 8848 2310122302521175314 4 1 9 6 8 4 3 6 5 2 33119 78 8864 17 48 122363644175375 2 2 9 8 7 4 6 6 33221 128880 1311132432645175446 0 0 3 7 0 0 2 5 6 7 0 33221 82 8896 2111132491846175507 8 4 5 2 1 6 1 8 8 4 3331184 8912 29 111325639 80 175568 6 5 5 4 2 0 9 8 3341986 8928 15 58 1326227 16185639 4 3 6 3 4 4 0 2 43521 44 8944 1411132681250185690 2 7 7 8 4 8 7 4 1 6 4361390 8960 29 60 132751417185761 0 3 8 5 2 3 2 2 0 43681 46 8976 59 121328143 88 185822 8 9 2 6 6 3 4 43745 94 9992 65 121328829 30185883 6 0 4 7 0 0 4 8 43823 48 910055 84 1329445 92 185954 4 1 8 8 4 5 2 4392498 910231 64 133001518186015 2 3 2 4 9 8 7 8 6 6 4401540 910517 66 1430747 96 186086 0 1 3 6 0 2 7 0 4401510910817201431313 28 186147 8 5 2 4 8 1 4 1 6 8 4

信道编码Turbo编码模块的输入参数:

? cr0,cr1,cr2,cr3,...,cr?Kr?1?,共C个码块,依次独立进行Turbo编码

6 71 444 71 120 37 152 39 462 12237 4 39 158 39

80

31 96 11903 2 41 16

6 25331 6 43 17

0 21 86 43 17

4 45 17

6 45 17

8 16121 0 89 18

2 32183 4 47 18

6 23 94 47 19

0 26483 0

信道编码Turbo编码模块的输出参数:

i)(i)(i)(i)? dr(i0),dr(1,dr2,dr3,...,dr?Dr?1?,i?0,1, and 2,Dr?Kr?4

4.1.4.1.2 咬尾卷积码

4.1.4.2 控制信息的编码

当控制信息与数据传输复用在一起时,控制信息的编码速率由UL-SCH传输所使用的调制方式和编码速率决定。控制信息的不同编码速率通过向其传输分配不同数目的编码符号来获得。

要进行编码单元的控制信息有,CQI and/or PMI, HARQ-ACK and rank indication。当控制信息在PUSCH中传输时,HARQ-ACK, rank indication and channel quality information o0,o1,o2,...,oO?1的编码分别独立进行。

对于TDD,有两种ACK/NACK反馈模式,通过高层可以进行配置:

-

ACK/NACK bundling and ACK/NACK multiplexing

ACK/NACK bundling,模式时, HARQ-ACK由 1 或者 2bits信息组成; ACK/NAK multiplexing模式, HARQ-ACK由1~4 bits信息构成, (详情可参考物TS36214 7.3 UE procedure for reporting ACK/NACK)

当UE传输HARQ-ACK bits or rank indicator bits时,应该确定HARQ-ACK or rank indicator编码的符号数Q?

对于ACK/NAK,输出的编码比特为q0ACK,qACK,...,qACK?1QACK?1 CQI编码后的序列为:q0,q1,q2,q3,...,qQCQI?1 RIRIRIRI编码后的序列为:q0,q1,...,qQ??1 RI 具体编码过程如下协议所示:

???????PUSCH?initialPUSCH?initialPUSCH?O?M?N??scsymboffsetPUSCH??? Q??min?,4?MscC?1????K???r????r?0????PUSCHwhere O is the number of ACK/NACK bits or rank indicator bits, Msc is the scheduled

bandwidth for PUSCH transmission in the current sub-frame for the transport block, expressed as

PUSCH-initiala number of subcarriers in [2], and Nsymbis the number of SC-FDMA symbols per subframe for initial PUSCH transmission for the same transport block given by PUSCH-initialULNsymb?2?Nsymb?1?NSRS, where NSRSis equal to 1 if UE is configured to send

????PUSCH and SRS in the same subframe for initial transmission or if the PUSCH resource allocation for initial transmission even partially overlaps with the cell specific SRS subframe and bandwidth configuration defined in Section 5.5.3 of [2]. Otherwise NSRSis equal to 0.

PUSCH?initial, C, and Kr are obtained from the initial PDCCH for the same transport block. If MscPUSCH?initialthere is no initial PDCCH with DCI format 0 for the same transport block, Msc, C,

and Kr shall be determined from:

? the most recent semi-persistent scheduling assignment PDCCH, when the initial PUSCH for the same transport block is semi-persistently scheduled, or,

? the random access response grant for the same transport block, when the PUSCH is initiated by the random access response grant. For HARQ-ACK information QACK?Qm?Q? and [

HARQ?ACK shall be determined according to [3]. ?offsetPUSCHRIFor rank indication QRI?Qm?Q? and [?offset], where ??offsetRI shall be determined ?offsetPUSCHHARQ?ACK], where ?offset??offsetaccording to [3].

4.1.4.2.1 HARQ-ACK 信息的编码

上行共享信道PUSCH中ACK信道编码

一个肯定ACK编码为二进制数1,一个否定的ACK编码为二进制数0

对于TDD ACK/NACK的绑定(子帧绑定后就可以用一个ACK做为这个绑定子帧的反馈,这样就能保证每个子帧都有对应的ACK反馈,且节省资源),HARQ-ACK包含一个或两个比特。对于TDD ACK/NACK的复用,HARQ-ACK包含一个到四个比特。

ACK],首先按照表格进行编码 1 如果HARQ-ACK包含1比特信息,例如[o0Table 5.2.2.6-1: Encoding of 1-bit HARQ-ACK Qm Encoded HARQ-ACK 2 [o0ACK y] 4 6 [o0ACK y x x]ACK[o0 y x x x x ]

ACKACK2 如果HARQ-ACK包含2比特信息,例如[o0 o1],对于传输一子帧两个码字时,

o0ACK 对应于码字0的应答信息 o1ACK对应于码字1的应答信息;对于捆绑和复用

ACKACK[o0 o1]的产生是不一样的,具体详见4.15.1下行链路HARQ过程。按照表格进行编

ACKACK?(o0 ?o1ACK)mod2。 码,其中o2Table 5.2.2.6-2: Encoding of 2-bit HARQ-ACK Qm Encoded HARQ-ACK 2 [oACK oACK oACK oACK oACK oACK] 0120124 6 ACKACKACKACK[o0 o1ACK x x o2 o0 x x o1ACK o2 x x] ACKACKACKACKACKACK[o0 o1 x x x x o2 o0 x x x x o1 o2 x x x x] 在表格中的x和y是预留位,是为了通过一种方法最大化扰乱携带HARQ-ACK信息的调制符号间的距离 这么做的目的是什么? ~对于TDD ACK-NACK绑定,一个过渡性的比特序列q0ACK~ACK,q~ACK,...,q~ACK是通过,q12QACK?1级联复用编码HARQ-ACK块来获得的,举个例子来讲,对于HARQ-ACK包含2比特信息,

~ACK= oACK…...类推下去,QACK是所有编码~ACK= oACK,qQm=2的情况下, q1100HARQ-ACK块的编码比特总数目 。我个人认为当Qm=2时QACK=6n,

当Qm=4时QACK=12n,

当Qm=6时QACK=18n,这里的n都是正整数。

ACK~这样才可以保证q0ACKACKACKACK一个加扰序列w0w1w2w3从表格中选取

?~ACK,q~ACK,...,q~ACK与表格一一对应。 ,q12QACK?1?

Table 5.2.2.6-A: Scrambling sequence selection for TDD ACK/NACK bundling i wACKwACKwACKwACK ?0123?这里i??Nbundled0 [1 1 1 1] 1 [1 0 1 0] 2 [1 1 0 0] 3 [1 0 0 1] ?1?mod4。参数Nbundled? 如果HARQ-ACK包含1比特,则参数m=1,如果HARQ-ACK包含2比特,则参数m=3。ACKACKACK与上面表格的联系是: q0,q1ACK,q2,...,qQACK?1Set i ,k to 0

while i?QACK

~ACK?y if qi // place-holder repetition bit

~ACK?wACKmod2 qiACK?qi?1?k/m?k?(k?1)mod4m 去掉y

else

??~ACK?x if qi// a place-holder bit

~ACK qiACK?qi 保留x,这里x,y为什么这么处理?

else

// coded bit

~ACK?wACKmod2 qiACK?qi?k/m?k?(k?1)mod4m

end if

??i?i?1

应该是0或1或x的值。

ACKACKACKO?2,, 这 o1ACK?oO]ACK?1最后的结果qiACK对于HARQ-ACK包含大于2比特信息的情况,例如[o0ACK里o0 对应于码字0的应答信息 o1ACK对应于码字1的应答信息,依次类推下去。

qiACK的得到的计算公式为:

qiACK?OACK?1n?0??oACKn?M?imod32?,nmod2 i=0,1,……. QACK-1 Mi,n是表格5.2.2.6.4-1.

?中对应的确定的值。

最后输出信道编码的向量序列是一个长度为Qm的由0或1或x组成的列向量。其表达方式为

Set i ,k to 0 while i?QACK

TqACK?[qiACK ...qiACK?Qm?1] k

i?i?Qm k?k?1

Table 5.2.2.6-A: Scrambling sequence selection for TDD ACK/NACK bundling i wACKwACKwACKwACK ?0123?这里i??Nbundled0 [1 1 1 1] 1 [1 0 1 0] 2 [1 1 0 0] 3 [1 0 0 1] ?1?mod4。参数Nbundled? 如果HARQ-ACK包含1比特,则参数m=1,如果HARQ-ACK包含2比特,则参数m=3。ACKACKACK与上面表格的联系是: q0,q1ACK,q2,...,qQACK?1Set i ,k to 0

while i?QACK

~ACK?y if qi // place-holder repetition bit

~ACK?wACKmod2 qiACK?qi?1?k/m?k?(k?1)mod4m 去掉y

else

??~ACK?x if qi// a place-holder bit

~ACK qiACK?qi 保留x,这里x,y为什么这么处理?

else

// coded bit

~ACK?wACKmod2 qiACK?qi?k/m?k?(k?1)mod4m

end if

??i?i?1

应该是0或1或x的值。

ACKACKACKO?2,, 这 o1ACK?oO]ACK?1最后的结果qiACK对于HARQ-ACK包含大于2比特信息的情况,例如[o0ACK里o0 对应于码字0的应答信息 o1ACK对应于码字1的应答信息,依次类推下去。

qiACK的得到的计算公式为:

qiACK?OACK?1n?0??oACKn?M?imod32?,nmod2 i=0,1,……. QACK-1 Mi,n是表格5.2.2.6.4-1.

?中对应的确定的值。

最后输出信道编码的向量序列是一个长度为Qm的由0或1或x组成的列向量。其表达方式为

Set i ,k to 0 while i?QACK

TqACK?[qiACK ...qiACK?Qm?1] k

i?i?Qm k?k?1

本文来源:https://www.bwwdw.com/article/oxqw.html

Top