Download as pdf or txt
Download as pdf or txt
You are on page 1of 32

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

BÀI GIẢNG MÔN

CƠ SỞ KỸ THUẬT TRUYỀN
THÔNG VÔ TUYẾN

Giảng viên: Lê Tùng Hoa


Bộ môn: Vô tuyến – Khoa Viễn thông 1

Hà Nội, 2020
CHƯƠNG 5

MÃ HÓA KÊNH KIỂM SOÁT LỖI


Ở TRUYỀN DẪN VÔ TUYẾN SỐ
NỘI DUNG (5)
5.1. Các nguyên tắc mã hóa kênh kiểm soát lỗi

5.2. Mã khối tuyến tính

5.3. Mã xoắn

5.4. Mã Turbo

5.5. Kết hợp mã hóa kênh kiểm soát lỗi và đan xen
5.4. Mã turbo
Giới thiệu chung

✓ Mã xoắn móc nối song song PCCC: Kết nối nhiều bộ mã hoá thành phần
cùng với đan đan xen hóa số liệu đầu vào của nhau. Để đạt đựơc hiệu năng tốt,
mã thành phần phải là mã hồi quy nhưng không nhất thiết phải là mã hệ thống.
Tuy nhiên để đơn giản thường sử dụng mã hệ thống => thường sử dụng mã
xoắn hệ thống hồi quy RSC (Recursive Systematic Convolutional).
✓ Khoảng cách tự do: Bộ mã hóa RSC tỷ lệ mã 1/n với bộ nhớ M, khoảng cách
tự do hiệu dụng giới hạn trên:

d free  2 + (n − 1) ( 2 M −1
+ 2)

Đạt được dấu bằng khi hàm truyền đạt có dạng:


 g (x) g (x) 
g(x) = 1, 1 ,...., n −1 
 Q(x) Q(x) 
Q(x) là đa thức nguyên thủy trên trường GF(2) bậc M; g1(x), gn-1(x) là các đa thức
khác Q(x) có dạng (1+….+gixp+…+xM), p=0,…,M; gi(0,1); x là toán tử trễ.

4
5.4. Mã turbo
Parallel / Serial Concatenated Codes
Serial encoder concatenation Serial decoder concatenation

Parallel encoder concatenation

5
Parallel decoder concatenation
Ma trận tạoCƠmã,
www.ptit.edu.vn SỞ sơ
KỸ đồ tạoTHÔNG
THUẬT mã, biểu đồ TUYẾN
TIN VÔ lưới của mã Turbo
Ma trận tạo mã (hàm truyền đạt) Q(x)

d k

 g1 (x)   1+x  d 2
D0,k D1,k D2,k
c
g(x)= 1,  = 1, 2
k


D1 D2
Mã RSC
 Q(x)   1+x+x  g(x) c k

Trạng thái Trạng thái


D0,kD1,k D0,k+1D1,k+1
Nhánh Ck=(dk,ck)
S 0 = 00
00

11
Nhánh

S 2 = 10
11
D0,k D1,k D 2,k dk D0,k +1D1,k +1 D2,k +1
Current State: Sk d k ck Next State: Sk+1
00

S1 = 01
10
01

01
S3 = 11 10
Thời gian

6
tk t k +1
www.ptit.edu.vn Mã xoắn
CƠ SỞ KỸ THUẬT hệ thống
THÔNG hồiVÔ
TIN quy TUYẾN note

Ma trận tạo mã (hàm truyền đạt)


Q(x)

d k Đầu ra: C1,N=(C1, C2,…Ck,., CN) , Ck= (dk, ck), dk là


d k D0,k D1,k D2,k
c bit đầu vào bộ mã hóa tại thời điểm k và ck là bit
được mã hóa tại thời điểm k, k=1,2,..,N.
D1 D2

g(x) c k

 g1 (x)   1+x 2 
Mã xoắn hồi quy hệ thống: tỷ lệ ½; M=2; K=3;
g(x)= 1,  = 1, 2 
Q=1112=78 và g1=1012=58. (đa thức 5/7)  Q(x)   1+x+x 
Trạng thái Nhánh Ck=(dkck) Trạng thái Lưới của RSC: Thể hiện tất cả các chuyển đổi trạng thái có thể có.
D0,k D1,k
00
D0,k+1 D1,k+1
Mỗi nhánh cho ba thông tin: (i) trạng thái của nhánh (trạng thái hiện tại
S0=00
và trạng thái tiếp theo); (ii) đầu ra được mã hóa ck; (iii) bit số liệu
11
không mã hóa dk.
11
S1=10
00

dk=1 dk
dk=0 D0,k D1,k D 2,k d k ck D0,k +1D1,k +1 D2,k +1
10
Current State: k Next State: k+1
S2=01 01

01

S3=11 10
8 k k+1
www.ptit.edu.vn CƠ SỞ KỸMã xoắn hệ
THUẬT thống TIN
THÔNG hồi quy
VÔ TUYẾN
Ma trận tạo mã (hàm truyền đạt)
Đầu ra: C1,N=(C1, C2,…Ck,., CN) , Ck= (dk, ck), dk là
Q(x)
bit đầu vào bộ mã hóa tại thời điểm k và ck là bit
d k được mã hóa tại thời điểm k, k=1,2,..,N.
d D0,k D1,k D2,k
c
 g1 (x)   1+x 2 
k
D1 D2
c
 = 1, 
g(x)
g(x)= 1,
k

2
 Q(x)   1+x+x 
Mã xoắn hồi quy hệ thống
Các bit thông tin Hai bit đuôi
Lưới của RSC: 1
Giải thuật Viterbi: Tìm
dk 0 1 1 0
Thể hiện tất cả các 00 00 00 00 00 một đường dẫn trên lưới
S0=0 0
chuyển đổi trạng 11 11 11 11 11 (tất cả các đường dẫn có
thái có thể có. Mỗi thể) giống với chuỗi thu
11 11 11 11 11
nhánh cung cấp ba nhất.
S1=1 0
thông tin: (i) trạng 00 00 00 00 00
thái của nhánh
Giải thuật MAP: đưa
d k =0
(trạng thái hiện tại ra các đầu ra mềm. Giải
dk =1
và trạng thái tiếp
10 10 10 10 10 thuật này dựa trên việc
theo); (ii) đầu ra S2=0 1 01 01 01 01 01 tìm kiếm bit có xác suất
được mã hóa ck; 01 01 01 01 01 lớn nhất, khi biết chuỗi
(iii) bit số liệu 10 10 10 10 10 bit bị tạp âm => dùng
S3=1 1
không mã hóa dk. k=1 k=2 k=3 k=4 k=5 k=6 cho giải mã Turbo
C k = (dkc k ) 00 11 10 11 00

9 Đường đậm nét biểu thị đường dẫn cho chuỗi bit bản tin vào bộ mã hóa là 011
4.6.3. Sơ đồ tạo
www.ptit.edu.vn CƠmã Turbo
SỞ KỸ THUẬT THÔNG TIN VÔ TUYẾN

❖ Nguyên lý hoạt
dk
động:
c k1

✓Khóa CM ở vị trí A:
N bit số liệu được
A
đưa ra trực tiếp, đồng D D
thời được dịch vào các B
Ck= (dkck1ck2)
bộ mã hóa RSC. Đầu
ra của bộ mã hóa là N
Bộ đan
tổ hợp hai bit hoặc ba xen
c k2

bit tùy vào chon tỷ lệ


mã là r=1/2 hoặc 1/3.
A
D D
B
✓Khóa CM ở vị trí B:
Đưa các bộ mã hóa
vào trạng thái "0" và Bộ tạo mã turbo dựa trên hai bộ bộ tạo mã RSC
tạo ra các ký hiệu đuôi ❑ Hiệu năng của mã turbo: Phụ thuộc vào kiểu và độ sâu
kết cuối chuỗi ký hiệu của bộ đan xen (cấu trúc bộ đan xen ảnh hưởng lên tính
mã đầu ra cho N bit số chất khoảng cách của mã turbo, hay khoảng các lớn nhất
liệu đầu vào. giữa các ký hiệu cạnh nhau ở đầu vào)
10
4.6.1. Khái quát
www.ptit.edu.vn mãKỸTurbo
CƠ SỞ THUẬT THÔNG TIN VÔ TUYẾN

1 2
Information
Channel Encoder Modulator
source

d = (d1 ,d 2 ,...,d k ,...) C1,N = (C1 , C2 ,..., C k ,..., C N );

Channel
Input Data Codeword sequence

Ck = ( d k , ck )

4 3
Information Demodulator
Channel Decoder
sink (Soft Output)

dˆ = (dˆ 1 ,dˆ 2 ,...,dˆ k ,...) soft data:  x k =a k +n xk = (1 − 2d k ) + n xk


R1,N = ( R1 ,R 2 ,..R k ,...R N ) ; 
estimatin of data  a k =1

R k = ( x k ,y k ) , k=1,...,N  y k =b k +n yk = (1 − 2c k ) + n yk
 b k =1

Sơ đồ khối hệ thống truyền thông số cơ bản với mã hóa/giải mã kênh


11
4.6.1. Khái quát
www.ptit.edu.vn mãKỸTurbo
CƠ SỞ THUẬT THÔNG TIN VÔ TUYẾN
What does “Turbo” mean?
✓ Mã Turbo được xây dựng trên cơ sở:
▪ Parallel Concatenated Codes (PCC)
▪ Serially Concatenated Codes (SCC)

The word “Turbo” comes from the decoder


which uses feedback, like a turbo engine

✓ Xây dựng PCCC trên cơ sở ba ý tưởng (PCC=>PCCC):


1) Chuyển đổi mã xoắn phi hệ thống vào mã xoắn hệ thống
2) Giải mã vào mềm ra mềm SISO (dùng các xác suất về số liệu thu để tạo ra đầu ra mềm
chứa thông tin về mức độ chắc chắn của bit đầu ra).
3) Mã hóa/giải mã trên các phiên bản được hoán vị của cùng một thông tin (đan xen)
✓ Giải mã: Giải thuật giải mã lặp dựa trên ý tưởng 2 và 3 sẽ thực hiện “tinh lọc” đầu ra sau
mỗi bước lặp giống như đầu máy Turbo trong máy bay => mã được gọi là mã Turbo.
12
www.ptit.edu.vn Bayes
CƠ SỞ KỸRule
THUẬTand MAP
THÔNG decoding
TIN VÔ TUYẾN

✓Giải mã turbo được thực hiện giải mã mềm và lặp trên cơ sở


sử dụng nhiều khối SISO (Soft-in/Soft-out) đồng loạt đưa ra
số đo xác suất để quyết định cứng. Số đo này được gọi là
xác suất hậu định APP (a posteriori probability).
✓Tồn tại hai giải thuật giải mã turbo SISO chính trên lưới:
▪ Giải thuật Viterbi đầu ra mềm VA/SOVA (Viterbi Algorithm/Soft
Out Viterbi Algorithm);
▪ Giải thuật cực đại hóa xác suất hậu định MAP (Maximum a
Posteriori), hay còn gọi là giải thuật BCJR (theo tên của các tác giả
Bahl, Cocke, Jelinek và Ravive).

MAP là giải thuật tốt hơn => xét MAP


13
4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN
4.6.4.1. Nguyên lý MAP
❖ Đầu vào giải mã là chuỗi N bit mã hóa, điều chế BPSK bị tạp âm:
 
R1,N =  R1 ,R 2 ,..R k-1 , R k , R k+1...R N  = ( R 1,k-1 ,R k ,R k+1,N ) ; R k = ( x k ,y k ) , k=1,...,N
 
 R 1,k-1 R k+1,N 
nxk và nyk là hai biến NN Gauss trung bình không phương sai 2; dk là
bit đầu vào bộ mã hóa; ck là bit được mã hóa mã hóa tại thời điểm k:
x k =a k +n xk = (1 − 2d k ) + n xk Likelihood of d k = 1 Likelihood of d k = −1
p(x k d k =1) p(x k d k =-1)
a k =1

y k =b k +n yk = (1 − 2c k ) + n yk
xk
b k =1

ak = (1-2dk): là bit thông tin không được mã hóa (số liệu thông tin);
bk= (1-2ck): là bit thông tin được mã hóa (số liệu kiểm tra chẵn lẻ);
nxk, nyk : là tạp âm AWGN trung bình không và phương sai 2 ; k = 1,2,..., N;
N = L+M là chuỗi ký hiệu phát; L là đội dài chuỗi bit thông tin; M là số bit đuôi
14
4.6.4. Giải thuật
www.ptit.edu.vn CƠgiải
SỞ KỸmã MAP
THUẬT THÔNG TIN VÔ TUYẾN

❖ Mục đích của giải mã MAP: Tìm ước tính bit số liệu phát d̂ k có
xác suất cao nhất khi cho trước R1,N.
❖ Thực hiện giải mã MAP: Tính logarit tỉ lệ hàm khả giống (LLR:
Log likelihood ratio: logarit tỷ lệ khả giống) cho từng dk:

 P (d k =0 R1,N )  P(dk=0|R1,N);

L(dˆ k ) = ln 
P(dk=1|R1,N) là xác suất
 phát hiện dk=0 và dk=1
 P (d k =1 R1,N )  khi đã thu được chuỗi
  R1,N

Giá trị L(dˆ k ) là đầu ra mềm. Sau khi thực hiện quyết định cứng lên
đầu ra này, kết quả là bit thông tin có khả năng giống bit phát nhất:
d̂ k =0
if L(dˆ k )  0 → dˆ k =0
L(dˆ k )  0
if L(dˆ k )  0 → dˆ k =1
<
ˆ
LLR d k =1
15
4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN
✓ Nếu Sk = m là trạng thái của bộ giải mã tại thời điểm k; m=0,1,..,2M-
1; M là số phần tử nhớ, thì APP là
( ) (
P d k =0 R1,N =  P d k =0,Sk =m R1,N ) R1,N=[R1,k-1,Rk,Rk+1,N] là chuỗi ký hiệu
m thu từ R1 đến RN

( ) (
P d k =1 R1,N =  P d k =1,Sk =m R1,N ) R1,k-1 là chuỗi ký hiệu thu từ R1 đến Rk-1
Rk+1,N là và ký hiệu thu từ Rk+1 đến RN.
m
✓ Đặt λk,i(m) = P(dk=i,Sk=m|R1,N), là xác suất trạng thái của bộ giải mã
là Sk=m và bit phát dk=i khi đã thu được chuỗi ký hiệu R1,N tại thời
điểm k:  R 1,N 
 
k,i (m) P  d k = i,Sk = m |R1,k −1 , R k , R k +1,N 
 
 
A B C D

Với i=0 hoặc 1 và cộng tất cả các


trạng thái có thể có của bộ giải mã

 P(d k =0 R1,N )  (
  P d k =0,Sk =m R1,N
m
)    k,0 (m) 
ˆ
L(d k ) = ln   = ln   = ln 
m
 P(d k =1 R1,N ) 
  (
  P d k =1,Sk =m R1,N )   m k,1 
 (m) 
17 m 
Back to
4.6.4. Giải thuật giảiKỸmã
CƠ SỞ
www.ptit.edu.vn MAP
THUẬT THÔNG TIN VÔ TUYẾN MAP
Là xác suất hậu định
✓ Nếu Sk là trạng thái của bộ giải mã tại thời
mà bit dữ liệu được
điểm k; m=0,1,..,2 M-1; M

là số phần tử nhớ, thì giải mã dk=i bằng cách

 P(d k =0 R1,N ) 

 k tháik =m(
lấy tổng trên tất cả các
P dtrạng
=0,S R1,N


  k,0 (m) 
m 
)
ˆ
L(d k ) = ln   = ln  m
=
 ln
 P(d k =1 R1,N ) 
  (
  P d k =1,Sk =m R1,N 
  (m) 
  k,1



)
m  m

▪ Định nghĩa xác suất liên hiệp λk,i(m) ▪ Định luật Bayes
 P  A B, C, D  = P ( A, B, C, D ) = P ( B A, C, D ) P ( A, C, D )
 
 R1,N

    P ( B, C, D ) P ( B, C, D )
λ k,i (m) P  d k = i,Sk = m |R 1,k −1 , R k , R k +1,N   
  P ( B A,C,D ) P ( D A , C ) P ( A, C )
=
 
A B C D
P ( B, C, D )

Sè ®o tr¹ ng th¸ i thuËn:  k (m)


Sè ®o tr¹ ng th¸ i ng­ î c:  k +1,i ( f (i,m) ) Sè ®o nh¸ nh:  k ,i (m)

 R k,N    
   
P  R1,k-1 d k = i,Sk = m , R k , R k+1,N  P R k+1,N d k = i,Sk = m , R k  P  d k = i, Sk = m , R k 
 B C   D  
C   C 

λ k,i (m) =  
A D A A

 
P ( R1,N ) = P  R 1,k-1 , R k , R k+1,N 
 
18  B C D 
4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN

✓ Số đo trạng thái thuận (Forward State Metric): Biểu diễn xác suất chuỗi ký hiệu thu trước
thời điểm k (R1,k-1) và chỉ phụ thuộc vào trạng thái Sk= m hiện thời tại thời điểm k

 kh«ng liªn quan kh«ng liªn quan


 Lưu ý rằng: R1,k-1 chỉ liên
quan đến trạng thái Sk=m mà
P  R1,k −1 | d k = i ,Sk = m, R k,N  = P(R 1,k −1 | Sk = m)
  nó gây ra, và không thụ
  thuộc vào phụ thuộc vào dk
 cũng như Rk,N (là các sự kiện
=  k (m) xẩy ra sau đó)

✓ Số đo trạng thái ngược (Backward State Metric): Biểu diễn xác suất thu chuỗi ký hiệu sau
thời điểm k (Rk+1,N) và chỉ phụ thuộc vào trạng thái Sk=m cũng như bit trước đó dk=i (thời
điểm k). Sự kiện liên hiệp (dk=i, Sk=m) xác định trạng thái tại thời điểm k+1: Sk+1.

 
(
P R k +1,N | d k = i,Sk = m, R k ) = P  R k +1,N | d k = i,Sk = m 
  Lưu ý rằng: Rk+1,N chỉ liên
  quan đến giá tri bit dk và

(
= P R k +1,N | Sk +1 = f ( i, m ) ) trạng thái thái tại thời điểm k
(Sk=m) mà không phụ thuộc
 Rk (là các sự kiện xẩy ra
=  k +1 ( f (i, m) ) trước đó)

▪ f(i,m)là trạng thái tiếp theo khi cho trước bit dk=i và trạng thái Sk=m tại thời điểm k.
▪ k+1(f(i,m)) là số đo trạng thái ngược tại thời điểm k+1 và trạng thái f(i,m).
19
4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN
✓ Số đo nhánh (Branch Metric): Biểu diễn xác suất phát liên hiệp dk tại trạng thái Sk=m và
thu ký hiệu Rk.

P ( d k = i,Sk = m, R k ) =  k,i (m)
 k (m)   k +1 ( f (i, m) )   k,i (m)
=> Kết quả là: λ k,i (m) =
P ( R1,N )

 P (d k =0 R1,N )  (
  P d k =0,Sk =m R1,N
m
)    k,0 (m) 
ˆ
L(d k ) = ln   = ln   = ln 
m
 P (d k =1 R1,N ) 
  (
  P d k =1,Sk =m R1,N )   m k,1 
 (m) 
m 
 
   k ( m )   k,0 ( m )   k +1 ( f (0, m) ) 
= ln  m 
 
   k ( m )   k,1 ( m )   k +1 ( f (1, m) ) 
20  m 
Summary
www.ptit.edu.vn of the
CƠ SỞ state Metrics
KỸ THUẬT and
THÔNG TIN VÔ Branch
TUYẾN metrics

 k −1 ( b0 (m) ) j=0  k −1,0 ( b0 ( m ) )  k ( m )  k (m) j=0  k,0 (m)  k +1 ( f (0, m) )

 k −1 ( b1 (m) )  k −1,1 ( b ( m) )
1
k,i(m)
j =1
k ,1 (m
j =1 )  k +1 ( f (1, m) )

k − 1 Formard State Metrics k k Reverse State Metrics k +1


a) Số đo trạng thái thuận: b) Số đo trạng thái ngược:
Giải thuật MAP:  
 Nhân (cộng trong miền

 k +1 ( f (i, m) ) = P  R k +1,N | d k = i,Sk = m 
 k (m) = P(R 1,k −1 | Sk = m) logarit) số đo trạng thái với số   k +1 ( m )



1 đo nhánh. Sau đó, thay vì so (


= P R k +1,N | Sk +1 = f ( i, m ) )
( )
α k (m) =  α k −1 b j (m)  δ k −1, j b j (m) ( ) sánh chúng với nhau là cộng 1
 k (m) =   k +1 ( f ( j, m) )   k, j ( m )
j=0 chúng để tạo thành số đo trạng
j=0
thái thuận (hoặc ngược) tiếp
 k (m) =  k −1 ( b0 (m) )  k −1,0 ( b0 (m) ) theo.  k (m) =  k +1 ( f (0, m) )  k,0 (m)
+  k −1 ( b1 (m) )  k −1,1 ( b1 (m) ) Số đo nhánh: +  k +1 ( f (1, m) )  k,1 (m)
bj(m) là trạng thái đi lùi về phía  f(j,m) là trạng thái tiếp theo
trước tương ứng với đầu vào j  k,i (m) = P ( d k = i,Sk = m, R k ) đã cho trước đầu vào j và
Khoi dau:  x k a k,i + y k b k,i (m)  trạng thái m
 k,i (m) =  k,i exp 
Khoi cuoi:
1 (m = 0) = 1  L + M +1 (m = 0) = 1
1 (m  0) = 0  2  L + M +1 (m  0) = 0
Trình bày số đo trạng thái thuận k(m) và số đo trạng thái ngược  k(m) trên lưới
21
4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN
4.6.4.2. Biểu thức số đo nhánh k,i(m) [Phụ lục]

 k,i (m) = P ( d k = i,Sk = m, R k )
 x k a k,i + y k b k,i (m)   x k d k,i + y k c k,i (m) 
k,i (m) =  k,i exp   hay k,i (m) =  k,i exp  − 
  2
   2

Nhánh xuất phát tại thời điểm tk=2 từ
m ( x 2 , y2 ) ( x 3 , y3 ) trạng thái m=00 khi bit vào dk=2 = i=0
00
00 2,0(00) và tiến đến trạng thái m=00 tại thời
11
11 điểm tk+1=3 => số đo nhánh k,i(m) =
2,0(00). Tương tự cho các nhánh khác
10 10 x k =a k +n kx = (1 − 2d k ) + n kx
a k =1
 ( x k , yk )
01

11 y k =b k +n ky = (1 − 2c k ) + n ky
00 b k =1
01
Ví dụ: Xét hai nhánh trên hình khi k,i=1/2;
k,i(m) 2 là phương sai tạp âm chuẩn hoá (Eb):
01 2=N0/(2 Eb)
1  1 
11
10  2,0 (00) = exp  2 ( x 2 1 + y 2 1) 
k=2 k=3 k=4 2  
 1
( x 3  −1 + y3  −1)
1
 3,1 (00) = exp 
22 Thể hiện số đo nhánh k,i(m) trên lưới 2  2

4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN k,i(m)
4.6.4.3. Biểu thức số đo trạng thái thuận k(m) [Phụ lục]
 1
 k (m) =   k −1 ( b j (m) )   k −1, j ( b j (m) )
 k (m) = P(R1,k −1 | Sk = m) j=0

 k (m) =  k −1 ( b0 (m) )   k −1,0 ( b0 (m) ) +  k −1 ( b1 (m) )   k −1,1 ( b1 (m) )


bj(m) biểu thị trạng thái tại thời điểm k-1 chuyển vào trạng thái
(xk-1, yk-1) (xk, yk) m tại thời điểm k dưới tác động của bit dk-1=j với j=0/1.
00
✓Tại thời điểm tk: hai nhánh tiến vào nút trạng thái m=00: (i) nhánh 1 do bit
vào j=0 và xuất phát từ trạng thái bj=0(m)=00 tại thời điểm tk-1; (ii) nhánh 2
do bit vào j=1 và xuất phát từ trạng thái bj=1(m)= 01 tại thời điểm tk-1. Vì
10 thế số đo trạng thái thuận thuận k(m) là:
k(00) = [k-1(00) k-1,0(00) + k-1(01) k-1,1(01)]
✓Tại thời điểm tk+1: hai nhánh (phải hình) tiến vào nút trạng thái m=10: (i)
nhánh 1 do bit vào j=0 và xuất phát từ trạng thái bj=0(m)=01 tại thời điểm tk
01 ; (ii) nhánh 2 do bit vào j=0 và xuất phát từ trạng thái bj=1(m)= 00 tại thời
điểm tk. => Vì thế số trạng thái đo thuận k+1(m) là:
k+1(01) = [k(00) k,1(00) + k(01) k,0(01)]
11 Tất cả các k(m) được tính trong điều kiện chúng được khởi đầu đúng như:
t=k+1 1(m=0) = 1 và 1(m≠0) = 0
t=k-1 t=k
Ví dụ: tính 2(00) xét điều kiện khởi đầu cho thí dụ theo trên:
2(00) = [1(00) 1,0(00) + 1(01) 1,1(01)] = 1,0(00)
Trình bày số đo trạng thái
23 thuận k(m) trên lưới
4.6.4. Giải thuật
www.ptit.edu.vn giảiKỸmã
CƠ SỞ MAP
THUẬT THÔNG TIN VÔ TUYẾN
4.6.4.4. Biểu thức số đo trạng thái ngược  k(m) [Phụ lục]
   1
(
 k +1 ( f (i, m) ) = P  R k +1,N | d k = i,Sk = m  = P R k +1,N | Sk +1 = f ( i, m )
 
)  k (m) =   k, j ( m )   k +1 ( f ( j, m) )
  k +1 ( m )   Thay vì tính tất cả j=0

 thuận theo thời


( ) (
 k (m) =  k,0 m   k +1 f (0, m) +  k,1 m   k +1 f (1, m) gian, tính ngược ) ( ) ( )
theo thời gian.
Trong đó f(i,m) biểu thị trạng thái tại thời điểm k+1 mà các trạng thái m tại thời điểm j trước đó
sẽ chuyển đến dưới tác động của bit dk=j.
Sk=m (xk-1, yk-1) (xk, yk)
00 Tại thời điểm tk , từ trạng thái m=01 có hai nhánh tiến tới hai trạng thái
tại tk+1 sau: (i) trạng thái fk+1,1(m)=00 khi bit vào j=1; (ii) trạng thái
fk+1,0(m)=10 khi bit vào j=0 => số đo ngược  k(m)= k(01) là:
k(01) = k+1(00) k,1(01) + k+1(10) k,1(01)
10
Tất cả các giá trị  được tính trong điều kiện khởi đầu ngược đúng. Hồi
quy ngược được khởi đầu bằng cách buộc trạng thái cuối cùng trở về 0
và đặt:
01 L+M+1(m=0) = 1 và L+M+1(m≠0) = 0
trong đó L là số bit bản tin, M (số phần tử nhớ của thanh ghi dịch) là số
bit đuôi bằng không để phân cách các bản tin.
Ví dụ: Tính k,i(01) tại k=L+M với sử dụng điều kiện khởi đầu ngược
11
trong trường hợp L=1 và M=2 là:
t=k t=k+1 t=k+2
3(01) = 4,0(00) 3,1(01) = 3,1(01)
Trình bầy  k,i(m) trên lưới
24
4.6.5. Giải mãCƠ
www.ptit.edu.vn Turbo
SỞ KỸ THUẬT THÔNG TIN VÔ TUYẾN
❖ Nguyên lý giải mã turbo dùng giải thuật MAP
✓ Các ký hiệu thu từ
La (dk )
kênh tạp âm Gauss
trắng cộng xk L(dk )
(AWGN) có dạng: Bộ giải mã SISO
yk
x k = (1-2d k ) +n x k = a k +n x k
ak
✓ ak là bit thông tin không được mã hóa (bit thông tin);
y k1 = (1-2c k1 ) +n yk1 = b k1 +n yk1 ✓ bki là bit thông tin được mã hóa (bit kiểm tra chẵn lẻ); i=1,2
b k1 ✓ nxk,nyki là tạp âm AWGN trung bình không và phương sai 2, i=1,2;
✓ k=1,2,..., N;
y k2 = (1-2c k2 ) +n yk2 = b k2 +n yk2
✓ N= L+M là chuỗi ký hiệu phát; L là đội dài chuỗi bit thông tin, M là số
b k2
bit đuôi.
P ( d k = +1| x k ) p (x k d k =i) P(d k =i)
L(dˆ k x k ) = ln P(d k =i x k ) =
P ( d k = −1| x k ) p(x k ) P(dk =+1|xk) và P(dk =-1|xk) là xác
LLR: Bayes suất hậu định APP, là xác suất phát
LLR của bit thông tin dk với dk=+1 và dk=-1 khi đã thu được xk;
điều kiện thu được xk
p(xk|dk=i) là mật độ xác suất của tín
ˆ p ( x k | d k =+1) P ( d k =+1) hiệu thu xk khi đã phát dk; p(xk) là mật
L(d k x k ) = ln + ln đô xác xuất của tín hiệu thu xk;
p ( x k | d k = −1) P ( d k =-1) P(dk=i),i=0/1 là xác suất phát dk
25 channel Mesurement Priori of Data (thông tin tiên nghiệm)
4.6.5. Giải mãCƠ
www.ptit.edu.vn Turbo
SỞ KỸ THUẬT THÔNG TIN VÔ TUYẾN

p ( x k | d k =+1) 2
1  1  
p(x) = exp  - (x − m) 2  
2  2 
2

 
ln = 2 xk
p ( x k | d k =-1) σ
AWGN
Kênh

1  1 2 

p(x k | d k = +1) = exp  - (x − 1)  
2  2
k

2

1  1 2

p(x k | d k = −1) = exp  - (x + 1) 
2  2
k

2



ˆ p ( x k | d k =+1) P ( d k =+1) 2 P ( d k =+1)


L(d k x k ) = ln + ln = 2 x k + ln
p ( x k | d k =-1) P ( d k =-1) σ P ( d k =-1)
Lc x k
Channel Mesurement Priori of Data La (dˆ k )
TT độ tin cậy của kênh TT tiền định của bit dk
Do bộ giải mã tạo ra để hiệu
chỉnh mọi sai lỗi trong kênh

 P(d k = 0 R1,N 
L(dˆ k ) = ln  = Lc x k + La (dˆ k ) + Le (dˆ k )
 P(d k =1 R1.N 
soft decoder output   Channel Mesurement Pr iori of Data Extrinic from decoder
• § Ót¨ ng c­ êng hiÖu qu¶ gi¶i m· (nèi tiÕp hai SISO) hiÖu sè
th«ng tin L(dˆ )­L (dˆ ) lµm ®Çu vµo TT tiÒn ®Þnh cho SISO sau
k a k
L(dˆ k )-La (dˆ k ) =Lc x k +Le (dˆ k )
• Khi kh«ng cã TT tiÒn ®Þnh La (dˆk )=0 Đầu vào bộ giải mã tiếp theo

th×
26 gi¶i m· MAP thµnh gi¶i m· ML
4.6.3. Sơ đồ tạo
www.ptit.edu.vn CƠmã Turbo
SỞ KỸ THUẬT THÔNG TIN VÔ TUYẾN
Mảng N số liệu cần được đan xen
❖ Hiệu năng của mã turbo
d1 d2 d3 d4 d5 d6 d7 d8 d9 d10
phụ thuộc vào:
một địa chi mới ngẫu nhiên

Giả sử dk, k{1,2,….,N} là toàn bộ số liệu mã ✓ kích thước và thiết kế (kiểu và


Mỗi số liệu tương ứng

cần được đan xen: coi đây là một mảng ba độ sâu) của bộ đan xen;
biến số: (i) int[] là mảng chỉ số; (ii) data[] là
mảng số liệu; (iii) intdata[] là mảng số liệu sau
✓ các bộ mã hóa thành phần;
đan xen. Sử dụng chương trình kiểu Pascal: ✓ số lần lặp giải mã.
For I:=1toN
Indata[int[I]:=dat[I] ❖ Quá trình đan xen: Số liệu
Mảng chỉ số chứa các số ngẫu nhiên giữa 1 và N được viết vào bộ nhớ theo trình
9 4 10 1 7 5 2 6 8 3 tự thông thường, đọc số liệu ra
theo một quy tắc nào đó sao cho
đạt được khoẳng cách lớn nhất
d4 d7 d10 d2 d6 d8 d5 d9 d1 d3 giữa các ký hiệu cạnh nhau ở đầu
1 2 3 4 5 6 7 8 9 10 vào.
Số liệu được đan xen
Hiệu năng của mã turbo phụ thuộc vào kiểu và độ sâu của bộ đan xen: Vì cấu trúc bộ đan xen
ảnh hưởng lên tính chất khoảng cách của mã turbo (khoảng các lớn nhất giữa các ký hiệu cạnh
nhau ở đầu vào). Kích thước bộ đan xen càng lớn thì BER càng nhỏ. Tăng kích thước bộ đan xen
làm tăng trễ mã hóa và giải mã, nên để đạt đựợc chất lượng tốt từ mã turbo đòi hỏi trễ lớn (Dù sử
dụng bộ đan xen kích thước nhỏ nhưng vẫn đạt được chất lượng tốt hơn mã xoắn với cùng mức
độ
27phức tạp).
4.6.5. Giải mãCƠ
www.ptit.edu.vn Turbo
SỞ KỸ THUẬT THÔNG TIN VÔ TUYẾN
❖ Giải mã vòng hồi L(d|x) = ˆ
L(d) = Lc (x) + L(d) + ˆ
Le (d) ˆ
= L'(d)+L ˆ
e (d)

tiếp (lặp) APP Soft decoder output Channel Mesuremt Priori of Data
ˆ output of Demodulator = input of Decoder
APP: L'(d):
Extrinic prom Decoder

Feedback for the next Iteration output of Decoder

Lý tưởng, số đo kênh và TT L(d|x) = L(x|d) + L(d) Ba thành phần đầu


ngoại lai bị tạp âm hóa một chách APP LLR of channel Priori ra LLR của bộ giải
không tương quan => TT ngoại mã hệ thống:
lai được coi là một quan trắc LLR of channel
✓ Số đo kênh;
ˆ
mới về dk bởi bộ giải mã khác để L(d)= Lc (x) +L(d) +Le (d) ˆ
✓ Thông tin tiên
tạo ra quá trình lặp. ˆ from De mod ulator
APP: L'(d)
nghiệm của dữ
liệu;
Le (dˆ k )= L(dˆ k ) = f ( th«ng tin d­ ) ✓ Thông tin ngoại
x k =0
lai từ quá trình
Feedback Loop
Feedback loop giải mã.

zk
Deinter-
L1 (dˆ k ) Inter- L1 (dˆ n )
leaving
L(2) ˆ
e (d k )
Xk MAP1 MAP2
leaving
DEC1 DEC2 Deinter-
leaving L 2 (dˆ k )

yk1 yk2 MAP rất nhạy cảm với


sự tương quan giữa
yk các ký hiệu liền kề Decoded d̂ k
output
Nguyên lý cơ bản cung cấp TT hồi tiếp tới bộ giải mã khác là: Bộ giải mã
không được cung cấp bởi chính thông tin được rút ra từ đầu vào của chính
nó (nhiễu loạn vào/ra bị tương quan cao)
DEMUX
28
4.6.5. Giải mãCƠ
www.ptit.edu.vn SỞ KỸlặp
Turbo THUẬT THÔNG TIN VÔ TUYẾN L(dˆ k )=Lc x k +La (dˆ k )+Le (dˆ k )

ddkk
=0
Channel L 2 (dˆ h )=Lc x h +L(2) (dˆ h )+L(2)
aIteration
ˆ
e 1(d h )
L1 (dˆ j )=Lc x j + L(1) ˆ (1) ˆ
a (d j ) +L e (d j )

0 (dˆ hh)=L
LL1(d ) 1 (dˆ i-D )
RSC1 D
LLccxxkk
L xˆ jj)=L
L1c(d +Lc(1) (dˆ (1)
x j +L
e
ˆ
ej ) (d j )
ˆ
cck1 L (dˆ j ))
L1 (d ˆˆ ))
INT k1
MAP1
1 j
INT
L11(d
(d ii
MAP2 L(2)
eL (deˆ h(d
)ˆ h=)L 2 (dˆ h )-L1 (dˆ h )
Channel Decoder Decoder
RSC2 LLc yyk(1)
(1)
c k ˆˆ ))
j = LLcc
Lc y(2) (2)(2) L22(d
(d
yyk −D
L hh
j
Channel D
D DeINT
cck2
k2
(2)
LLccyy(2)
k
k
d̂ˆ hh ˆ

Le (dˆ k-Δ )
d L(2)
L1/2 (dˆ j/h ): LLR t¹ i ®Çu ra cña MAP1 vµ MAP2 e (d k − )
x k = (1- 2d k ) + n x k : mÉu sè liÖu thu kh«ng ®­ î c m· hãa
DeINT
L(2) ˆ
y(i) e (d k-D ): TT ngo¹ i lai t¹ i ®Çu ra MAP2
k = (1- 2c k,i ) + n y k,i : mÉu sè liÖu thu ®­ î c m· hãa i=1,2
cña mét lÇn lÆp (bÞtrÔ) ˆ
d̂ d
k-k
ˆ ®­ a vµo lµm TT tiÒn ®inh MAP1 lÇn 2
(2) ˆ
a (dk − ) ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Le (dk − )
L(1)
L(1) ˆ L(1) ˆ Iteration 2
a (dk-Δ ) a (d j-Δ ) ˆ
D Lc xh-Δ +L(2)
a (di-Δ )
Lc x j-Δ +L(1) ˆ D
ˆ e (d j-Δ )
Lc xk-Δ +L(1)
a (dk-Δ )
L1(dˆ j-Δ )
INT Le (dˆ h-Δ )
MAP1 MAP2 DeINT
Decoder Decoder
(1) Lc xi-Δ +L(1) ˆ
Lc yk-Δ e (di-Δ ) L2 (dˆ h-Δ )

Le (dˆ h-2Δ )
Lc xk-Δ (2)
Lc yk-Δ
D Lc y(2)
j-Δ

D: trÔgi¶i m· MAP1, MAP2 L(1/2)


a (dˆ k/i ): TT tiªn ®inh vµo MAP1 hoÆc MAP2 dˆ h-Δ
: trÔmét lÇn lÆp gi¶i m· L(1) (dˆ ) = L(2) (dˆ ): TT ngo¹ i lai do MAP1 t¹ o ra
e j a j DeINT
Next
j = k­D vµ h=i­D vµ lµm TT tiªn ®inh cho MAP2 dˆ k-Δ Iteration
29
4.6.7. Hiệu năng
www.ptit.edu.vn củaKỸmã
CƠ SỞ Turbo
THUẬT THÔNG TIN VÔ TUYẾN

❖Hiệu năng của mã turbo phụ thuộc vào:


✓ Kích thước và thiết kế bộ đan xen;
✓ Bộ mã hóa thành phần;
P
✓ Số lần giải mã lặp.
b
−1
10
✓ Kích thước bộ đan xen càng lớn
10
−2
Không mã hóa
thì BER càng nhỏ. Tăng kích
thước bộ đan xen làm tăng trễ mã
10
−3
hóa và giải mã => để đạt đựợc
chất lượng tốt đòi hỏi trễ lớn (Dù
10
−4
sử dụng bộ đan xen kích thước
nhỏ nhưng vẫn đạt được chất
10
−5
18 5 3 2 iteration 1 lượng tốt hơn mã xoắn với cùng
mức độ phức tạp).
0 1 2 3 4 5 6
✓ Sau 18 lần lặp, xác suất lỗi bit
Eb / N0 [dB]
thấp hơn 10-5 tại Eb/N0= 0,7dB.
Các xác suất lỗi bit phụ thuộc vào số lần lặp và E b/N0:
(Mã turbo: 16 trạng thái, tỷ lệ 1/2, K=5 với g1=[11111],
Khi số lần lặp lớn, mức độ cải
g2=[10001]; kích thước đan xen 256x256) thiện chất lượng theo số lần lặp.
30
4.6.8. Mã Turbo
www.ptit.edu.vn CƠ trong hệ thống
SỞ KỸ THUẬT THÔNGTTDĐ 3G và 4G
TIN VÔ TUYẾN

dk

RSC 1 ck1
dk A  g (x) g 2 (x) 
g(x) = 1, 1
Q(x) 
D D
,
D
B
 Q(x)
trong dó
g1 ( x ) = g 2 ( x ) = 1 + x + x 3
Q ( x ) = 1 + x 2 + x3
Bộ đan
RSC2
xen ck2
A
D D D
B

Bộ mã hóa turbo tỷ lệ 1/3 cho 3G WCDMA và 4G LTE


(sử dụng hai bộ tạo mã thành phần RSC 8 trạng thái)

31
4.6.7. Hiệu năng
www.ptit.edu.vn củaKỸmã
CƠ SỞ Turbo
THUẬT THÔNG TIN VÔ TUYẾN
BER 1

✓ Hiệu năng mã turbo: 10-1


cho phép giảm SNR BER 64QAM
không mã hóa
yêu cầu 6 dB nhưng
lại trả giá về băng 10-2 BER 64 QAM
mã hóa turbo
thông => cần cân
nhắc dung hòa giữa
10-3
SNR và băng thông.

10-4
G=6dB

✓ Độ lợi mã hóa G:
 Eb   Eb  5 10 15 20 25 30
G(dB) =   [dB] -   [dB] SNR3=16dB SNRu=22dB
SNR=Eb/N0 , dB

 N 0 u  N 0 c
Minh họa độ lợi mã hóa đối với điều chế 64QAM sử dụng
mã hóa turbo r=1/3
32
www.ptit.edu.vn CƠMÃ TURBO
SỞ KỸ TRONG
THUẬT THÔNG TINWCDMA
VÔ TUYẾN

g1 ( x) = 1 + x + x 2
Mô phỏng hiệu năng BER với đa thức: g 2 ( x) = 1 + x ,2

Số vòng lặp = 3; SNR= [0 0.5 1.0 1.5 2.0] Số vòng lặp =5; SNR= [0 0.5 1.0 1.5 ]

0
M« pháng hiÖu n¨ ng x¸ c suÊt lçi m· Turbo 0
M« pháng hiÖu n¨ ng x¸ c suÊt lçi m· Turbo
10 10

sè vßng lÆp = 1 sè vßng lÆp= 1


sè vßng lÆp = 2 sè vßng lÆp = 2
sè vßng lÆp = 3 sè vßng lÆp = 3
sè vßng lÆp = 4
sè vßng lÆp = 5

-1 -1
x¸ c suÊt lçi Pe

10 10

x¸ c suÊt lçi Pe
-2
10 -2
10

-3
10 -3
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 10
0 0.5 1 1.5
SNR [dB] SNR [dB]

33
4.6.1. Khái quát
www.ptit.edu.vn mãKỸTurbo
CƠ SỞ THUẬT THÔNG TIN VÔ TUYẾN

❖ History of Turbo Codes


❖ Parallel/Serial Concatenated Codes
❖ Turbo Decoding
✓ SISO Module
✓ BCJR algorithm
❖ EXIT charts
Key achievements in the history of “Turbo Codes“
▪ 1962, Gallagers thesis entitled “Low - Density Parity Check Codes“
▪ 974, Bahl, Cocke, Jelinek and Raviv publish the paper “Optimal Decoding of
Linear Codes for Minimizing Symbol Error Rate”
▪ 1989, Hagenauer and Höher publish “A Viterbi Algorithm with Soft-Decision
Outputs and its Applications“
▪ 1993, Berrou and Glavieux present the turbo decoding principle at the
International Conference in Communications: “Near the Shannon limit error-
correcting coding and decoding: turbocodes“
▪ 1996, Hagenauer, Offer and Papke publish the paper “Iterative Decoding of
Binary Block and Convolutional Codes”
34

You might also like