1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Modulation and coding course- lecture 9

43 308 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Channel Coding
Tác giả Catharina Logothetis
Trường học Digital Communications I
Thể loại Bài giảng
Năm xuất bản 2007
Định dạng
Số trang 43
Dung lượng 202,8 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Linear block codes – cont’d„ For memory less channels, the probability that the decoder commits an erroneous decoding is „ is the transition probability or bit error probability over cha

Trang 1

Digital Communications I:

Modulation and Coding Course

Period 3 - 2007 Catharina Logothetis

Lecture 9

Trang 2

Last time we talked about:

„ Evaluating the average probability of

symbol error for different bandpass

modulation schemes

„ Comparing different modulation schemes based on their error performances.

Trang 3

Today, we are going to talk about:

„ Channel coding

„ Linear block codes

Trang 4

Bandpassmodulate

Trang 5

„ Channel coding:

Transforming signals to improve

communications performance by increasing the robustness against channel impairments (noise, interference, fading, )

„ Waveform coding: Transforming waveforms to better waveforms

„ Structured sequences: Transforming data sequences into better sequences, having structured redundancy

-“Better” in the sense of making the decision process less subject to errors.

What is channel coding?

Trang 6

Error control techniques

„ Full-duplex connection, error detection codes

„ The receiver sends a feedback to the transmitter, saying that if any error is detected in the received packet or not (Not-Acknowledgement (NACK) and Acknowledgement (ACK), respectively)

„ The transmitter retransmits the previously sent

packet if it receives NACK

„ Simplex connection, error correction codes

„ The receiver tries to correct some errors

Hybrid ARQ (ARQ+FEC)

Trang 7

Why using error correction coding?

(dB) /N0

E b

B

P

A F

B

D C

E

Uncoded

Coded

Coding gain:

For a given bit-error probability,

the reduction in the Eb/N0 that can be

realized through the use of code:

[dB]

[dB]

[dB]

c 0 u

E

Trang 8

Channel models

„ Discrete memory-less channels

„ Binary Symmetric channels

„ Gaussian channels

Trang 9

Linear block codes

„ Let us review some basic definitions first which are useful in understanding Linear block codes.

Trang 10

Some definitions

„ Binary field :

addition and multiplication forms a field

0 1 1

1 0 1

1 1 0

0 0 0

0 0 1

0 1 0

0 0 0

Trang 11

Some definitions…

„ Fields :

operations ‘+’ and ‘.’ are defined

1 F forms a commutative group under + operation

The additive identity element is labeled “0”

1 F-{0} forms a commutative group under

Operation The multiplicative identity element is labeled “1”

1 The operations “+” and “.” distribute:

F a

b b

a F

b

∀ ,

F a

b b

a F

b

∀ ,

)(

)(

)

Trang 12

Some definitions…

„ Vector space:

„ Let V be a set of vectors and F a fields of

elements called scalars V forms a vector space

v V

v u

v v

v = ⋅ + ⋅ ⋅ + = ⋅ + ⋅

a ) and ( )(

)(

,

v v

V

v∈ ⋅ =

∀ , 1

Trang 13

Some definitions…

„ Examples of vector spaces

„ The set of binary n-tuples, denoted by

„ A subset S of the vector space is called a

subspace if:

„ The all-zero vector is in S.

„ The sum of any two vectors in S is also in S.

Example:

ofsubspacea

is )}

1111(

),1010(

),0101(

),0000

),1101(

),1100(

),1011(

),1010(

),1001(

),1000(

),0111(

),0101(

),0100(

),0011(

),0010(

),0001(

),0000{(

4 =

V

Trang 14

Some definitions…

„ A collection of vectors ,

the linear combinations of which include all vectors in

a vector space V, is said to be a spanning set for V or

Trang 15

Linear block codes

„ Linear block code (n,k)

linear block code if, and only if, it is a

subspace of the vector space

„ Members of C are called code-words

„ The all-zero codeword is a codeword

„ Any linear combination of code-words is a codeword

Trang 16

Linear block codes – cont’d

Trang 17

Linear block codes – cont’d

„ The information bit stream is chopped into blocks of k bits

„ Each block is encoded to a larger block of n bits

„ The coded bits are modulated and sent over channel

„ The reverse procedure is done at the receiver

rateCode

bitsRedundant

n

k R

n-k

c =

Trang 18

Linear block codes – cont’d

w(U), is the number of non-zero elements in

U.

U and V, is the number of elements in which

they differ

) (

) ( U, V = w UV

d

)(

min)

,(min

Trang 19

Linear block codes – cont’d

defined as the maximum number of

guaranteed correctable errors per codeword, is

1

min −

= d

e

Trang 20

Linear block codes – cont’d

„ For memory less channels, the probability that the decoder commits an erroneous decoding is

„ is the transition probability or bit error probability over channel

„ The decoded bit error probability is

j n j

n

t j

n

j

n j n

Trang 21

Linear block codes – cont’d

„ Note that for coded systems, the coded bits are

modulated and transmitted over channel For

example, for M-PSK modulation on AWGN channels (M>2):

where is energy per coded bit, given by

R E M Q

M M

N

E M Q

M

sin log

2 log

2 sin

log 2 log

2

0

2

2 0

Trang 22

Linear block codes –cont’d

rows the vectors on the basis,

} ,

, , {V1 V2 K Vk

v

v v

v

M O

11 1

V G

Trang 23

Linear block codes – cont’d

„ Encoding in (n,k) block code

mG

k n

k

k n

m m

m u

u u

m m

m u

u u

V V

V

V

V V

⋅ +

+

⋅ +

2 1

1 2

1

2 1

2 1 2

1

) , , , (

) ,

, ,

( ) , , , (

K K

M K

K

Trang 24

Linear block codes – cont’d

„ Example: Block code (6,3)

0 1 0

0 0 1

1 1 0

0 1 1

1 0 1

3 2 1

V V

V G

1 1 0 0 1 1 1

1 0

1 1 0

0 0 1

1 0 1

1 1 1

1 0 0

0 1

1 1

1 0

0 0 1

1 0 1

0 0 0

1 0 0

0 1 0

1 0 0

1 1 0

0 1

0 0

0 0

1 0 0

0 1 0

Message vector Codeword

Trang 25

Linear block codes – cont’d

„ Systematic block code (n,k)

elements in the codeword are information bits.

matrix

) (

matrix identity

] [

k n

k

k k

k k

I P

G

) , ,

, ,

, , ,

( )

, , ,

(

bits message

2 1

bits parity

2 1

2 1

4 43 4

42 1

4

4 3 4

4 2

n p p p m m m u

u

=

U

Trang 26

Linear block codes – cont’d

„ For any linear code we can find an

matrix , such that its rows are orthogonal to the rows of :

„ H is called the parity check matrix and

its rows are linearly independent.

„ For systematic linear block codes:

n k

n− ) × (

H =

Trang 27

Linear block codes – cont’d

error

) , , ,

(

or vector codeword

received

) , , ,

(

2 1

2 1

n

n

e e

e

r r

r = +

T T

eH rH

S = =

Trang 28

Linear block codes – cont’d

„ Standard array

„ For row , find a vector in of minimum

weight which is not already listed in the array.

„ Call this pattern and form the row as the

corresponding coset

k k

n k

n k

n

k k

2

2 2

2 2

2

2 2

1

U e

U e

e

U e

U e

e

U U

L M

i = 2,3, ,2 − V n

i

e i : th

Trang 29

Linear block codes – cont’d

1 Calculate

2 Find the coset leader, , corresponding to

3 Calculate and corresponding

Uˆ = + ˆ mˆ

) ˆ ˆ

( ˆ

Trang 30

Linear block codes – cont’d

„ Example: Standard array for the (6,3) code

010110 100101

010001

010100 100000

100100 010000

111100 001000

000110 110111

011010 101101

101010 011100

110011 000100

000101 110001

011111 101011

101100 011000

110111 000010

000110 110010

011100 101000

101111 011011

110101 000001

000111 110011

011101 101001

101110 011010

110100 000000

L L

M

M M

M

coset

codewords

Trang 31

Linear block codes – cont’d

111 010001

100 100000

010 010000

001 001000

110 000100

011 000010

101 000001

000 000000

(101110) (100000)

(001110) ˆ

ˆ

estimated is

vector corrected

The

(100000) ˆ

is syndrome this

to ing correspond pattern

Error

(100) (001110)

: computed is

of syndrome The

received.

is (001110)

ted.

transmit (101110)

= +

= +

H rH

S

r r

U

T T

Error pattern Syndrome

Trang 32

m k

n

m m

1

: capability correction

Error

:

bits parity of

Number

1 2

: bits

n informatio of

Number

1 2

:

length Code

Trang 33

Hamming codes

„ Example: Systematic Hamming code (7,4)

] [

1 0

1 1

1 0

0

1 1

0 1

0 1

0

1 1

1 0

0 0

1

3 3

T

P I

1 0

0 0

1 1

1

0 1

0 0

0 1

1

0 0

1 0

1 0

1

0 0

0 1

1 1

0

4 4×

Trang 34

Cyclic block codes

„ Cyclic codes are a subclass of linear

block codes.

„ Encoding and syndrome calculation are easily performed using feedback shift-

registers.

implemented with a reasonable complexity.

„ BCH and Reed-Solomon codes are cyclic codes

Trang 35

Cyclic block codes

„ A linear (n,k) code is called a Cyclic code

if all cyclic shifts of a codeword are also a codeword.

„ Example:

) , ,

, ,

, , ,

, (

) , ,

, ,

(

1 2

1 0

1 1

) (

1 2

1 0

− +

i n i

n i

n

u u

u u

u u

u

u u

u u

U

U U

U U

) 1011 (

) 0111 (

) 1110 (

) 1101 (

) 4 ( )

3 ( )

2 ( )

1 (

Trang 36

Cyclic block codes

„ Algebraic structure of Cyclic codes, implies expressing codewords in polynomial form

„ Relationship between a codeword and its cyclic shifts:

„ Hence:

) 1 (

degree

) (

, )

(

1

) 1 (

) 1 (

1 1

) (

1 2

2 1 0

1

1

1 2

2 1 0

1 )

1 (

+ +

=

+ +

+ + +

+

=

+ +

X u

n

n n

X

n n

n

n n

n n

X u

X

u X

u X

u X

u X u u

X u

X u

X u X u X

X

n n

U

U

U

4 43 4

42 1

4 4 4 4 4

4 4 4 4

1

) 1 (

modulo )

( )

(

) 1

X X

X

U

Trang 37

Cyclic block codes

„ Basic properties of Cyclic codes:

1 Within the set of code polynomials in C, there

is a unique monic polynomial with minimal degree is called the generator polynomials

1 Every code polynomial in C, can be

g g

n

X

Trang 38

Cyclic block codes

„ The orthogonality of G and H in polynomial

form is expressed as This means is also a factor of

1 The row , of generator matrix is

formed by the coefficients of the cyclic

shift of the generator polynomial

g g

g

g g

g

X X

X X X

L

O O

O O

L L

M

1 0

1 0

1 0

1

) (

) (

1)

()

X X

X h

g

1+

i, =1, ,

"

1

"i

Trang 39

Cyclic block codes

„ Systematic encoding algorithm for an

(n,k) Cyclic code:

1 Multiply the message polynomial by

1 Divide the result of Step 1 by the generator

polynomial Let be the reminder

1 Add to to form the codeword

( X

U

Trang 40

Cyclic block codes

„ Example: For the systematic (7,4) Cyclic code

with generator polynomial

1 Find the codeword for the message

1 ) ( )

( )

(

: polynomial codeword

the Form

1 )

1 ( 1

(

: (

by ) ( Divide

) 1

( )

( )

(

1 ) ( )

1011 (

3

, 4

, 7

6 5

3 3

) ( remainder generator

3 quotient

3 2

6 5

3

6 5

3 3

2 3

3

3 2

4 42 1 43

42 1

4 4

4 3 4

4 2 1

+ +

+

= +

=

+ +

+ +

+ +

= +

+

+ +

= +

+

=

=

+ +

U

g m

m m

m m

p g

q

X X

X X

X X

X

X X X

X X X

X X

X) X

X

X X

X X

X X

X X

X X

X X

X

k n k

n

X (X)

(X)

k n

k n

)1011(

=

m

3

1)(X = + X + X

g

Trang 41

Cyclic block codes

„ Find the generator and parity check matrices, G and H,

⋅ +

⋅ +

=

1 0 1 1 0 0 0

0 1 0 1 1 0 0

0 0 1 0 1 1 0

0 0 0 1 0 1 1

) 1101 (

) , , , ( 1

0 1

1 )

row(2) row(1)

row(3) row(3)

row(1)

→ +

+

→ +

0 1 0 0 1 1 1

0 0 1 0 1 1 0

0 0 0 1 0 1 1

0 1 1 1 0 1 0

1 1 0 1 0 0 1

H

4 4×

I

T

P

Trang 42

Cyclic block codes

„ Received codeword in polynomial form is given by

„ The syndrome is the reminder obtained by dividing the received polynomial by the generator polynomial

„ With syndrome and Standard array, error is estimated

„ In Cyclic codes, the size of standard array is considerably

)()

()

Received codeword

Error pattern

)()

()()

Trang 43

Example of the block codes

Ngày đăng: 25/10/2013, 06:15

TỪ KHÓA LIÊN QUAN