You are on page 1of 59

HYBRID ARQ IN WIRELESS NETWORKS

Emina Soljanin
Mathematical Sciences Research Center, Bell Labs
March 19, 2003
HYBRID ARQ IN WIRELESS NETWORKS
Emina Soljanin
Mathematical Sciences Research Center, Bell Labs
March 19, 2003
R. Liu and P. Spasojevic
WINLAB
HYBRID ARQ IN WIRELESS NETWORKS
Emina Soljanin
Mathematical Sciences Research Center, Bell Labs
March 19, 2003
R. Liu and P. Spasojevic
WINLAB
1
ACKNOWLEDGEMENTS
Alexei Ashikhmin
Jaehyiong Kim
Sudhir Ramakrishna
Adriaan van Wijngaarden
2
AUTOMATIC REPEAT REQUEST
The receiving end detects frame errors and requests retransmissions.
P
e
is the frame error rate, the average number of transmissions is
1 (1 P
e
) + + n P
n1
e
(1 P
e
) + =
1
1 P
e
2
AUTOMATIC REPEAT REQUEST
The receiving end detects frame errors and requests retransmissions.
P
e
is the frame error rate, the average number of transmissions is
1 (1 P
e
) + + n P
n1
e
(1 P
e
) + =
1
1 P
e
Hybrid ARQ uses a code that can correct some frame errors.
2
AUTOMATIC REPEAT REQUEST
The receiving end detects frame errors and requests retransmissions.
P
e
is the frame error rate, the average number of transmissions is
1 (1 P
e
) + + n P
n1
e
(1 P
e
) + =
1
1 P
e
Hybrid ARQ uses a code that can correct some frame errors.
In HARQ schemes
the average number of transmissions is reduced, but
each transmission carries redundant information.
3
THROUGHPUT IN HYBRID ARQ
BPSK, AWGN, BCH Coded
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
uncoded
E
s
/N
0
[dB]
3
THROUGHPUT IN HYBRID ARQ
BPSK, AWGN, BCH Coded
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
uncoded
E
s
/N
0
[dB]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,247,3]
3
THROUGHPUT IN HYBRID ARQ
BPSK, AWGN, BCH Coded
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
uncoded
E
s
/N
0
[dB]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,247,3]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,215,11]
3
THROUGHPUT IN HYBRID ARQ
BPSK, AWGN, BCH Coded
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
uncoded
E
s
/N
0
[dB]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,247,3]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,215,11]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,177,23]
3
THROUGHPUT IN HYBRID ARQ
BPSK, AWGN, BCH Coded
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
uncoded
E
s
/N
0
[dB]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,247,3]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,215,11]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,177,23]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
cutoff rate
3
THROUGHPUT IN HYBRID ARQ
BPSK, AWGN, BCH Coded
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
uncoded
E
s
/N
0
[dB]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,247,3]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,215,11]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
[255,177,23]
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
cutoff rate
0
0.2
0.4
0.6
0.8
1
-6 -4 -2 0 2 4 6 8 10
capacity
4
TYPE II HYBRID ARQ
Incremental Redundancy
Information bits are encoded by a (low rate) mother code.
Information and a selected number of parity bits are transmitted.
4
TYPE II HYBRID ARQ
Incremental Redundancy
Information bits are encoded by a (low rate) mother code.
Information and a selected number of parity bits are transmitted.
If a retransmission is not successful:
transmitter sends additional selected parity bits
receiver puts together the new bits and those previously received.
Each retransmission produces a codeword of a stronger code.
Family of codes obtained by puncturing of the mother code.
5
INCREMENTAL REDUNDANCY
A Rate 1/5 Mother Code
at the transmitter
5
INCREMENTAL REDUNDANCY
A Rate 1/5 Mother Code
at the transmitter
transmission # 1
at the receiver
5
INCREMENTAL REDUNDANCY
A Rate 1/5 Mother Code
at the transmitter
transmission # 1
at the receiver
transmission # 2
5
INCREMENTAL REDUNDANCY
A Rate 1/5 Mother Code
at the transmitter
transmission # 1
at the receiver
transmission # 2
transmission # 3
5
INCREMENTAL REDUNDANCY
A Rate 1/5 Mother Code
at the transmitter
transmission # 1
at the receiver
transmission # 2
transmission # 3
transmission # 4
6
THROUGHPUT IN HYBRID ARQ
8 6 4 2 0 2 4 6 8 10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Es/N0 (dB)
T
h
r
o
u
g
h
p
u
t
HARQ Scheme based on Turbo codes in AWGN Channel
Throughout of new puncturing scheme
Throughout of standard
BPSK Capacity
Cutoff Rate
7
RANDOMLY PUNCTURED CODES
The mother code is an (n, k) rate R turbo code.
Each bit is punctured independently with probability .
7
RANDOMLY PUNCTURED CODES
The mother code is an (n, k) rate R turbo code.
Each bit is punctured independently with probability .
The expected rate of the punctured code is R/(1 ).
For large n we have
turbo code
k bits
puncturing device
n bits (1)n bits
8
A FAMILY OF RANDOMLY PUNCTURED CODES
Rate Compatible Puncturing
The mother code is an (n, k) rate R turbo code.

j
for j = 1, 2, . . . , m are puncturing rates,
j
>
k
for j < k.
If the i-th bit is punctured in the k-th code and j < k,
then it was punctured in the j-th code.
8
A FAMILY OF RANDOMLY PUNCTURED CODES
Rate Compatible Puncturing
The mother code is an (n, k) rate R turbo code.

j
for j = 1, 2, . . . , m are puncturing rates,
j
>
k
for j < k.
If the i-th bit is punctured in the k-th code and j < k,
then it was punctured in the j-th code.

i
for i = 1, 2, . . . , n are uniformly distributed over [0, 1].
If
i
<
l
, then the i-th bit is punctured in the l-th code.
9
MEMORYLESS CHANNEL MODEL
Binary input alphabet {0, 1} and output alphabet Y.
Constant in time with
transition probabilities W(b|0) and W(b|1), b Y.
9
MEMORYLESS CHANNEL MODEL
Binary input alphabet {0, 1} and output alphabet Y.
Constant in time with
transition probabilities W(b|0) and W(b|1), b Y.
Time varying with
transition probabilities at time i W
i
(b|0) and W
i
(b|1), b Y.
W
i
(|0) and W
i
(|1) are known at the receiver.
10
PERFORMANCE MEASURE
Time Invariant Channel
Sequence x C {0, 1}
n
is transmitted, and x

decoded.
Sequences x and x

are at Hamming distance d.


10
PERFORMANCE MEASURE
Time Invariant Channel
Sequence x C {0, 1}
n
is transmitted, and x

decoded.
Sequences x and x

are at Hamming distance d.


The probability of error P
e
(x, x

) can be bounded as
P
e
(x, x

)
d
= exp{d},
where is the Bhattacharyya noise parameter:
=

bY
_
W(b|x = 0)W(b|x = 1)
10
PERFORMANCE MEASURE
Time Invariant Channel
Sequence x C {0, 1}
n
is transmitted, and x

decoded.
Sequences x and x

are at Hamming distance d.


The probability of error P
e
(x, x

) can be bounded as
P
e
(x, x

)
d
= exp{d},
where is the Bhattacharyya noise parameter:
=

bY
_
W(b|x = 0)W(b|x = 1)
and = log is the Bhattacharyya distance.
11
PERFORMANCE MEASURE
An (n, k) binary linear code C with A
d
codewords of weight d.
11
PERFORMANCE MEASURE
An (n, k) binary linear code C with A
d
codewords of weight d.
The union-Bhattacharyya bound on word error probability:
P
C
W

n

d=1
A
d
e
d
.
11
PERFORMANCE MEASURE
An (n, k) binary linear code C with A
d
codewords of weight d.
The union-Bhattacharyya bound on word error probability:
P
C
W

n

d=1
A
d
e
d
.
Weight distribution A
d
for a turbo code?
11
PERFORMANCE MEASURE
An (n, k) binary linear code C with A
d
codewords of weight d.
The union-Bhattacharyya bound on word error probability:
P
C
W

n

d=1
A
d
e
d
.
Weight distribution A
d
for a turbo code?
Consider a set of codes [C] corresponding to all interleavers.
Use the average A
[C](n)
d
instead of A
d
for large n.
12
TURBO CODE ENSEMBLES
A Coding Theorem by Jin and McEliece
There is an ensemble distance parameter c
[C]
0
s.t. for large n
A
[C](n)
d
exp
_
dc
[C]
0
_
for large enough d.
12
TURBO CODE ENSEMBLES
A Coding Theorem by Jin and McEliece
There is an ensemble distance parameter c
[C]
0
s.t. for large n
A
[C](n)
d
exp
_
dc
[C]
0
_
for large enough d.
For a channel whose Bhattacharyya distance > c
[C]
0
, we have
P
[C](n)
W
= O(n

).
c
[C]
0
is the ensemble noise threshold.
13
PUNCTUREDTURBO CODE ENSEMBLES
ITW, April 2003
c
[C
P
]
0
is the punctured ensemble noise threshold:
A
[C
P
](n)
d
exp
_
dc
[C
P
]
0
_
for large enough n and d.
13
PUNCTUREDTURBO CODE ENSEMBLES
ITW, April 2003
c
[C
P
]
0
is the punctured ensemble noise threshold:
A
[C
P
](n)
d
exp
_
dc
[C
P
]
0
_
for large enough n and d.
If log < c
[C]
0
,
13
PUNCTUREDTURBO CODE ENSEMBLES
ITW, April 2003
c
[C
P
]
0
is the punctured ensemble noise threshold:
A
[C
P
](n)
d
exp
_
dc
[C
P
]
0
_
for large enough n and d.
If log < c
[C]
0
,
c
[C
P
]
0
log
_
1
exp (c
[C]
0
)
_
.
14
PUNCTUREDTURBO CODE ENSEMBLES
0 2 4 6 8 10 12
10
3
10
2
10
1
10
0
Es/N0 (dB)
F
E
R
R=0.7 k=384
R=0.7 k=3840
R=0.8 k=384
R=0.8 k=3840
R=0.9 k=384
R=0.9 k=3840
15
PUNCTUREDTURBO CODE ENSEMBLES
6 4 2 0 2 4 6 8 10
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
R=0.82
Es/N0 (dB)
T
h
r
o
u
g
h
p
u
t
Punctured TC k=384
Punctured TC k=3840
BPSK Capacity
Cutoff Rate
16
HARQ MODEL
There are at most m transmissions.
I = {1, . . . , n} is the set indexing the bit positions in a codeword.
I is partitioned in m subsets I(j), for 1 j m.
Bits at positions in I(j) are transmitted during j-th transmission.
16
HARQ MODEL
There are at most m transmissions.
I = {1, . . . , n} is the set indexing the bit positions in a codeword.
I is partitioned in m subsets I(j), for 1 j m.
Bits at positions in I(j) are transmitted during j-th transmission.
The channel remains constant during a single transmission:

i
= (j) for all i I(j).
17
PERFORMANCE MEASURE
Time Varying Channel
Let W
n
(y|x) =

n
i=1
W
i
(y
i
|x
i
).
17
PERFORMANCE MEASURE
Time Varying Channel
Let W
n
(y|x) =

n
i=1
W
i
(y
i
|x
i
).
Sequence x C {0, 1}
n
is transmitted, and x

decoded.
The probability of error P
e
(x, x

) can be bounded as
P
e
(x, x

yY
n
_
W
n
(y|x)W
n
(y|x

)
=
n

i=1
_

bY
_
W
i
(b|x
i
)W
i
(b|x

i
)
_

i:x
i
=x

i
18
HARQ PERFORMANCE
d
j
is the Hamming distance between x and x

over I(j).
The probability of error P
e
(x, x

) can be bounded as
P
e
(x, x

)
m

j=1
(j)
d
j
18
HARQ PERFORMANCE
d
j
is the Hamming distance between x and x

over I(j).
The probability of error P
e
(x, x

) can be bounded as
P
e
(x, x

)
m

j=1
(j)
d
j
A
d
1
...d
m
is the number of codewords with weight d
j
over I(j).
The union bound on the ML decoder word error probability:
P
|I(1)|

d
1
=1

|I(m)|

d
m
=1
A
d
1
...d
m
m

j=1
(j)
d
j
19
HARQ PERFORMANCE
Random Transmission Assignment
A bit is assigned to transmission j with probability
j
.
d is the weight of the original codeword.
d
j
is the weight of the d-th transmission sub-word.
The probability that the sub-word weights are d
1
, d
2
. . . , d
m
is
_
d
d
1
__
d d
1
d
2
_
. . .
_
d d
1
d
m1
d
m
_

d
1
1

d
2
2
. . .
d
m
m
20
HARQ PERFORMANCE
Random Transmission Assignment
The union bound on the ML decoder word error probability:
P
|I(1)|

d
1
=1

|I(m)|

d
m
=1
A
d
1
...d
m
m

j=1
(j)
d
j
20
HARQ PERFORMANCE
Random Transmission Assignment
The union bound on the ML decoder word error probability:
P
|I(1)|

d
1
=1

|I(m)|

d
m
=1
A
d
1
...d
m
m

j=1
(j)
d
j
The expected value of the union bound is

d
A
d
_
m

j=1
(j)
j
_
h
.
The average Bhattacharyya noise parameter:
=
m

j=1
(j)
j
21
A RANDOMLY PUNCTURED TURBO CODE
An Example of Random Transmission Assignment
The puncturing probability is .
Transmission over the channel with noise parameter .
21
A RANDOMLY PUNCTURED TURBO CODE
An Example of Random Transmission Assignment
The puncturing probability is .
Transmission over the channel with noise parameter .
Equivalent to having two transmissions:
rst with assignment probability (1 ) and noise parameter ;
second with assignment probability and noise parameter 1.
21
A RANDOMLY PUNCTURED TURBO CODE
An Example of Random Transmission Assignment
The puncturing probability is .
Transmission over the channel with noise parameter .
Equivalent to having two transmissions:
rst with assignment probability (1 ) and noise parameter ;
second with assignment probability and noise parameter 1.
The average noise parameter is = (1 ) + .
Requirement log > c
[C]
0
21
A RANDOMLY PUNCTURED TURBO CODE
An Example of Random Transmission Assignment
The puncturing probability is .
Transmission over the channel with noise parameter .
Equivalent to having two transmissions:
rst with assignment probability (1 ) and noise parameter ;
second with assignment probability and noise parameter 1.
The average noise parameter is = (1 ) + .
Requirement log > c
[C]
0
translates into
log > log
_
1
exp (c
[C]
0
)
_
.
22
INCREMENTAL REDUNDANCY
Concluding Remarks
at the transmitter
22
INCREMENTAL REDUNDANCY
Concluding Remarks
at the transmitter
transmission # 1
at the receiver
22
INCREMENTAL REDUNDANCY
Concluding Remarks
at the transmitter
transmission # 1
at the receiver
transmission # 2
22
INCREMENTAL REDUNDANCY
Concluding Remarks
at the transmitter
transmission # 1
at the receiver
transmission # 2
transmission # 3
22
INCREMENTAL REDUNDANCY
Concluding Remarks
at the transmitter
transmission # 1
at the receiver
transmission # 2
transmission # 3
transmission # 4

You might also like