Tải bản đầy đủ (.pdf) (6 trang)

Thuật toán thiết kế bộ đan xen mới cho mã chập liên kết nối tiếp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (284 KB, 6 trang )


Abstract: This paper presents a new approach to
compute the effective union bound for Serial Concatenated
Convolutional Codes (SCCC). Simulation results prove that
the new effective union bound is very close to the
performance of SCCC with Enhanced Max-Log-MAP
decoding in high E
b
/N
0
region (floor region). Then the
paper proposes an algorithm for designing the interleaver
that has a near-optimum effective union bound. Simulation
results show that the performance of the new interleaver
has been significantly improved as compared to other
known interleavers.
I. ĐẶT VẤN ĐỀ
Mã Turbo và mã chập liên kết nối tiếp (SCCC)
được phát minh lần đầu tiên tại [1], [2] gồm các mã
chập liên kết song song và nối tiếp nhờ bộ đan xen bit
(interleaver) với thuật toán giải mã lặp có chất lượng
tiến tới cận Shannon. Chất lượng của mã SCCC kém
hơn so với mã Turbo tại vùng E
b
/N
0
nhỏ, nhưng tại
vùng E
b
/N
0


lớn chất lượng của SCCC lại tốt hơn nhiều
(ở vùng sàn lỗi -floor). Có 5 yếu tố chính ảnh hưởng
đến chất lượng của mã SCCC là: thuật toán giải mã
thành phần, số lần giải mã lặp, kích thước bộ đan xen,
cấu trúc bộ mã hóa thành phần, cấu trúc bộ đan xen.
Trong bài báo này chúng tôi trình bày một số kết quả
nghiên cứu cải tiến thuật toán giải mã lặp mã SCCC
để chất lượng giả
i mã tiến tới giải mã tối ưu "tương
đồng cực đại" (Maximum Likelihood - ML). Trên cơ
sở đó, chúng tôi xây dựng một đường biên hiệu dụng
đơn giản nhằm đánh giá chất lượng mã SCCC tại
vùng "floor". Sử dụng các kết quả này có thể thiết kế
bộ đan xen tốt tại vùng "floor" theo tiêu chí cực tiểu
đường biên hiệu dụng.
Bài báo được tổ chức như sau: Mục 2 trình bày cấu
trúc bộ mã hóa, gi
ải mã lặp mã SCCC và đề xuất áp
dụng thuật toán giải mã lặp Enhanced Max-Log-MAP
cho mã SCCC có chất lượng tiến gần tới giải mã ML.
Mục 3 của bài báo trình bày một đường biên hiệu
dụng mới cho mã SCCC với các bộ đan xen giả ngẫu
nhiên, cho phép đánh giá chất lượng mã SCCC tại
vùng "floor". Mục 4 ứng dụng đường biên này để thiết
kế bộ đan xen mới nâng cao chất lượng mã SCCC.
Kết quả cho thấy nếu lự
a chọn cấu trúc bộ đan xen tốt,
vùng "floor" của mã SCCC rất thấp, đạt tỷ lệ lỗi bít
BER < 10
-10

÷10
-11
(Bit Error Rate) và có thể đánh giá
được bằng đường biên hiệu dụng. Trong lúc đó, các
bộ đan xen tốt khác như S-Random vùng "floor"
thường xuất hiện tại BER<10
-8
÷10
-9
.
II. MÃ HÓA VÀ GIẢI MÃ LẶP MÃ SCCC
Xét cấu trúc bộ mã hóa SCCC được mô tả như trên
hình 1. Chuỗi tin đầu vào được mã hóa bởi bộ mã
vòng ngoài G
out
, đầu ra của nó được hoán vị bởi bộ
đan xen π và đưa tới bộ mã vòng trong G
in
. Giả thiết
tốc độ mã hóa thành phần (vòng trong R
in
và vòng
ngoài R
out
) là 1/2, thì tốc độ mã hoá của SCCC sẽ là
1/4. Chuỗi đầu ra của bộ mã vòng trong có thể loại bỏ
xen kẽ (puncture) để đạt tốc độ tùy ý và truyền qua
kênh tạp âm trắng cộng tính Gaussian AWGN
(Additive White Gaussian Noise) với điều chế được
giả thiết là BPSK lý tưởng. Bộ giải mã lặp mã SCCC

gồm hai bộ giải mã thành phần đầu vào mềm, đầu ra
mềm (Soft In Soft Out - SISO) [3] như được mô tả
Thuật toán thiết kế bộ đan xen mới
cho mã chập liên kết nối tiếp
A New Algorithm of Designing Interleavers
for Serial Concatenated Convolutional Codes
Vũ Thanh Hải
trên hình 2.
Gọi u và c là các chuỗi đầu vào và đầu ra của bộ mã
hoá thành phần, L(u;I), L(c;I) là các xác suất tiên
nghiệm đầu vào tương ứng của SISO; L(u;O), L(c;O)
là các xác xuất hậu nghiệm đầu ra được cập nhật dựa
trên cấu trúc lưới cơ sở. Phương pháp tính L(u;O),
L(c;O) có thể là MAP, Log-MAP hay Max-Log-MAP
[3]. Đầu ra L(c;O) của bộ giải mã vòng ngoài có thể
sử dụng làm thông tin tiên nghiệm (sau giải đan xen π
-
1
) cho bộ giải mã vòng trong theo các lần lặp. Thuật
toán giải mã lặp Max-Log-MAP cải tiến (Enhanced
Max-Log-MAP) đã được phát hiện tại [4] dùng cho
mã Turbo trong đó xác xuất tiên nghiệm của các bộ
SISO được nhân với hệ số SF (Scale Factor độc lập
với kênh) có chất lượng tiến tới MAP, Log-MAP. Hệ
số SF cho mã Turbo 3GPP được xác định là SF ≈ 0.69
bằng mô phỏng trong dải 0÷1 tại một giá trị cụ thể của
E
b
/N
0

. Thuật toán giải mã lặp Enhanced Max-Log-
MAP cũng có thể sử dụng cho mã SCCC như trên
hình 2 trong đó xác suất tiên nghiệm của bộ giải mã
vòng ngoài được nhân với hệ số SF.
Xét mã SCCC có bộ mã vòng trong và vòng ngoài
đều là mã RSC G
in
= G
out
= [1,5/7]
octal
, bộ đan xen có
kích thước N=256. Đầu ra của bộ mã hóa vòng trong
được loại bỏ xen kẽ theo mẫu chu kỳ P= [1 1 1 0] (bit
tại vị trí P(i)=0 sẽ bị loại bỏ) nên R
in
=2/3, tốc độ mã
hóa của SCCC là 1/3. Hệ số SF=0.55 của thuật toán
giải mã lặp được
chọn tối ưu bằng mô
phỏng trong khoảng
0÷1 với bước nhảy
0,01. So sánh BER
và tỷ lệ lỗi khung
(Frame Error Rate)
FER với các thuật toán
giải mã thành phần
khác nhau được mô tả
trên hình 3, 4 với số
lần lặp là 72. Ta nhận

thấy rằng tại vùng
E
b
/N
0
đủ lớn,
Enhanced Max-Log-
MAP có chất lượng tốt hơn Log-MAP, Max-Log-
MAP thông thường. Thuật toán giải mã Enhanced
Max-Log-MAP đơn giản hơn MAP, Log-MAP và
không cần ước lượng kênh chính xác, vì vậy sẽ được
sử dụng để mô phỏng trong bài báo này.

Hình 3. So sánh BER của các thuật toán giải mã SCCC
III. ĐƯỜNG BIÊN HIỆU DỤNG CỦA MÃ SCCC
Với các mã thành phần tuyến tính, mã SCCC cũng
có thể xem là một mã khối tuyến tính. Thuật toán giải
mã lặp với số lần lặp đủ lớn có thể xem là thuật toán
cận tối ưu có chất lượng hồi qui về giải mã ML. Giả
thiết từ mã phát là toàn "0", xác suất lỗi của một sự
kiện lỗi khác "0" sẽ nhỏ hơn tổng tất cả các s
ự kiện




Hình 1. Bộ mã hoá SCCC








Hình 2. Bộ giải mã SCCC
Hard
decision

Đầu vào
mềm
SISO
i
LLR
SISOo
L(u;I)
L(c;I)
L(c;O)
L(u;O)
L(u;I)
L(c;I)
L(c;O)
L(u;O)
0
SF

Giải đan
xen π-1
Đan xen
π


Mã hoá
vòng ngoài
(Outer code)
Mã hoá
vòng trong
(Inner code)
Puncture
Đan
xen π

Dữ liệu
phát
Đi
điều chế


lỗi, vì vậy BER (P
b
) và FER (P
F
) của SCCC có thể
đánh giá bằng đường biên tổng:

k
kkb
b
cC
out 0
w2dRE
PQ

NR N

⎛⎞

⎜⎟
⎜⎟
⎝⎠




k
kb
F
cC
0
2d RE
PQ
N

⎛⎞

⎜⎟
⎜⎟
⎝⎠

(1)
với N là kích thước của bộ đan xen, w
k
là trọng số

chuỗi bit thông tin đầu vào c
k
trong tập C các từ mã
khác 0 và có trọng số đầu ra tương ứng d
k
, R là tốc độ
mã hóa của mã SCCC, R=R
in
R
out
.

Hình 4. So sánh FER của các thuật toán giải mã SCCC
Hàm lỗi Q(

) được định nghĩa:

2
t/2
x
11x
Q(x) e dt erfc
2
22


⎛⎞
==
⎜⎟
π

⎝⎠

(2).
Đường biên tổng (1) của mã SCCC không thể tính
được với các máy tính hiện nay do phải xem xét toàn
bộ

out
NR
21
chuỗi tin C đầu vào có trọng số khác "0".
Để đơn giản hơn, chúng ta chỉ xét các thành phần có
ảnh hưởng lớn trong tổng (1) là các thành phần tạo ra
trọng số nhỏ tại đầu ra của bộ mã hóa vòng ngoài.
Tổng của các thành phần này được gọi là đường biên
hiệu dụng. Đường biên này tại vùng E
b
/N
0
đủ lớn là
khá sát với thực tế (theo thực nghiệm hoặc mô phỏng)
nên có thể sử dụng để ước lượng BER (FER) tại vùng
này
Do mã vòng trong là RSC nên trọng số đầu ra là d
in

= d
out
+ p
in

, d
out
là trọng số đầu ra của bộ mã hóa vòng
ngoài và cũng là trọng số đầu vào của bộ mã hóa vòng
trong, p
in
là trọng số phần mã hóa của bộ mã vòng
trong. Do đó đường biên hiệu dụng có thể có thể tính
với các trường hợp d
out
nhỏ, nghĩa là trong (1) chỉ xét
các thành phần d
out
free
≤ d
out

≤ d
*
, với d
out
free
là khoảng
cách tự do cực tiểu của bộ mã vòng ngoài.
Định nghĩa chuỗi tin lỗi đơn là chuỗi có trọng số
khác "0" rời khỏi tuyến toàn "0" sau đó hồi qui với
chiều dài t bit tin. Gọi A và B là tập hợp các chuỗi tin
lỗi đơn trọng số d
out
≤ d

*
được bắt đầu từ vị trí i (hình
5.a, 5.b), C và D là tập hợp các lỗi cụm có trọng số
d
out
≤ d
*
gồm n các lỗi đơn có trọng số d
**
(hình 5.c,
5.d với n=2). Tổng (1) có thể ước lượng là:

out
i
k
ii
NR
kkb
b
i1
c
out 0
w2dRE
PQ
NR N
=
⎛⎞

⎜⎟
⎜⎟

⎝⎠
∑∑


out
i
k
i
NR
kb
F
i1
c
0
2d RE
PQ
N
=
⎛⎞

⎜⎟
⎜⎟
⎝⎠
∑∑
(3)
trong đó
i
k
c
là các chuỗi tin khác 0 thuộc A, B, C,

D có trọng số thông tin đầu vào
i
k
w
, trọng số đầu ra
tương ứng
i
k
d
. Để ý rằng nếu bộ mã hóa vòng ngoài
có sử dụng kết thúc trạng thái bằng m bit đuôi (m là
số lượng trạng thái), các thành phần liên quan đến B,
D trong tổng (3) được bỏ qua do B, D chỉ chứa các
mẫu lỗi chưa kết cuối.
Gọi U
j
là tập hợp các chuỗi tin mà tại thời điểm j
trên lưới không kết thúc trạng thái có trọng số d≤d
*
-
d
0
. Trong đó d
0
là trọng số nhỏ nhất của các nhánh kết
nối tới trạng thái "0", với mã RSC=[1,5/7]
octal
ta có
d
0

=2 (hình 6). Các chuỗi tin thuộc U
j+1
là một mẫu lỗi
được tích lũy vào A chỉ khi mã hóa nó, trạng thái cuỗi
cùng là "0" và có trọng số d≤d
*
. Hình 6 mô tả các
chuỗi thuộc tập U
j
tại thời điểm j là các đường bắt đầu
từ trạng thái gốc (j=1) cho tới hai đường đậm trên
hình vẽ. Các đường đậm - gạch sẽ không cần phải
xem xét tại thời điểm j+1. Tại thời điểm j+1, chỉ các
mẫu lỗi tương ứng với đường nối về trạng thái "0" sẽ
được tích lũy vào tập A. Như vậy tại mỗi thời đi
ểm ta
loại bỏ các đường (từ mã) mà kết thúc trạng thái "0"
có trọng số d> d
*
với mục đích giảm lượng tính toán
và bộ nhớ. Quá trình mã hóa và kiểm tra trạng thái sẽ
tiếp tục cho tới khi tập U
j
là rỗng. Thuật toán tìm các
mẫu lỗi đơn này cũng giống như thuật toán Viterbi
với các đường sống sót (survior paths) là các đường
d≤ d
*
-d
0

.
Với một lỗi cụm gồm n lỗi đơn, ta có trọng số d
n

của một mẫu lỗi sẽ thỏa mãn d
n
≥ n d
out
free
. Giả thiết
n=2, các cụm lỗi đơn có trọng số tối thiểu cần phải
tính toán là d
**
= d
*
- d
out
free
. Ví dụ với mã vòng ngoài
RSC=[1,5/7]
octal
có d
out
free
= 5, d
*
= 12, ta có 255 mẫu
lỗi thuộc A, d
**
=7 và số lượng mẫu lỗi đơn cần phải

xem xét khi tính lỗi cụm là 7. Như vậy tại vị trí lỗi thứ
i của chuỗi tin đầu vào, ta có thể giới hạn các sự kiện
lỗi có khả năng tạo trọng số thấp ở đầu ra bộ mã
SCCC.
Trên hình 3, 4 so sánh kết quả mô phỏng và đường
biên hiệu dụng của bộ mã SCCC không kết thúc trạng
thái các bộ mã thành phần đã đề
cập ở mục trên. Kết
quả cho thấy, với số lần lặp đủ lớn, đường biên hiệu
dụng tại vùng "floor" khá sát với kết quả mô phỏng
với thuật toán giải mã Enhanced Max-Log-MAP .
IV. THIẾT KẾ BỘ ĐAN XEN MEUB CHO MÃ
SCCC
Bộ đan xen S-Random được [5], [6] định nghĩa như
một quá trình sắp xếp các số ngẫu nhiên cho ma trận
địa chỉ đan xen
π
sao cho:

(i) (j)π −π
≥ S với
Sji
≤−
. (4).
Tham số S được gọi là hệ số trải của bộ đan xen và
được chọn càng lớn càng tốt. Tuy nhiên để đảm bảo
sự thành công của quá trình ngẫu nhiên, S phải được
chọn S

2/N

(N là kích thước của bộ đan xen). Bộ
S-Random có khả năng loại bỏ các sự kiện lỗi đơn
trọng số thấp tại đầu ra của bộ mã hóa vòng ngoài để
chúng không tạo ra mẫu lỗi có trọng số thấp tại đầu ra
bộ mã hóa vòng trong. Bộ đan xen S-Random chỉ tính
đến các lỗi đơn ngắn
chưa xem xét đến các
mẫu lỗi cụm và mất
nhiều thời gian thi
ết
kế trên máy tính mà
khó thành công.
Bộ đan xen tương
quan CDI
(Correlation
Designed Interleaver)
tối ưu hệ số tương
quan giữa các đầu
vào các bộ giải mã
SISO [7], [8] đã được
nghiên cứu ứng dụng
cho mã Turbo với chỉ
tiêu thiết kế là:

(
i1
c
j
jM,m1
(i) arg min e



∈=
π=

Tập hợp M trong
(5) là các địa chỉ
tranh cử vào vị trí i
của ma trận đan xen
π
. Hệ số c được chọn trong khoảng c=0.18
÷
0.28.
Trong [9], chúng tôi đã giới thiệu bộ đan xen cực tiểu
đường biên hiệu dụng (Minimum Effective Union
Bound-MEUB) dùng cho mã Turbo nhằm cải thiện









Hình 5. Các mẫu lỗi điển hình tại đầu ra của bộ mã hóa vòng ngoài









Hình 6. Các mẫu lỗi đơn U(j) (đường đậm)
NR
out
1
d ≤ d
*

a) Các mẫu lỗi thuộc A
state
"
0"
1
b) Các mẫu lỗi thuộc B
d ≤ d
*

state
"
0"
i
i
NR
out
1
c) Các mẫu lỗi thuộc C
state

"
0"
d

d
**

d

d
**

1
d) Các mẫu lỗi thuộc D
d

d
**
d

state
"
0"
i
i
NR
out
NR
out
3

2
1
0
Trạng thái
j
1 2 3

j+1
d
0



chất lượng tại vùng "floor". Tương tự, kết hợp chỉ tiêu
S-Random, chỉ tiêu tương quan, và cận tối ưu đường
biên hiệu dụng, ta có chỉ tiêu thiết kế mới cho mã
SCCC là:

()
design
i1
c(m)jim
j
j
jM,m1
P(i) P
(i) argmin K e (6),

−π −+−
∈=

<
⎛⎞
π= +
⎜⎟
⎝⎠


trong đó:

j
0 nÕu (m) j S víi i m S
K
K ng−îc l¹i

π−≥ −≤

=




K được chọn đủ lớn hơn so với thành phần tổng để
đảm bảo rằng tại thời điểm i nếu đặc tính S không
thoả mãn ta sẽ chọn ð(i) có hệ số tương quan cực tiểu.
P(i) là tổng xác suất lỗi của các sự kiện lỗi (lỗi đơn và
lỗi cụm) được bắt đầu từ vị trí i. P
design
là ngưỡng thiết
kế được lựa chọn càng nhỏ càng tốt và ð(i) được chọn
làm địa chỉ đan xen với hệ số tương quan nhỏ nhất và

thỏa mãn P(i)< P
design
. Bộ đan xen mới cho mã SCCC
cũng được gọi là MEUB với thuật toán thiết kế trên là
gần tối ưu.
Xét bộ mã SCCC có cấu trúc như mục trên, kích
thước bộ đan xen N=256, không kết thúc trạng thái bộ
mã vòng ngoài và giới hạn trọng số lỗi đầu vào bộ mã
hóa vòng ngoài d
*
=12, d
n
=7, ta có thể thiết kế một bộ
đan xen có đường biên hiệu dụng như hình 7,8. Với
các mẫu lỗi đã xác định, ta cũng dễ dàng tính được
khoảng cách hiệu dụng là d
free.eff
=32.

Sử dụng chương
trình tính d
free
của Gallero [10] ta cũng có d
free
= d
free.eff

=32 nhưng sử dụng phương pháp hạn chế các mẫu lỗi
cho phép độ phức tạp giảm đáng kể. So sánh với bộ
đan xen S-Random trên hình 7,8 ta cũng nhận thấy

rằng bộ đan xen MEUB có chất lượng (BER và FER)
tốt hơn tại vùng "floor" của mã SCCC.

Hình 7. So sánh BER bộ đan xen mới MEUB
được thiết kế cho mã SCCC

Hình 8. So sánh FER bộ đan xen mới MEUB
được thiết kế cho mã SCCC
V. KẾT LUẬN
Bài báo đã trình bày 3 vấn đề:
1. Cải tiến thuật toán giải mã bằng cách áp dụng
thuật toán Enhanced Max-Log-MAP sao cho với
số lần lặp đủ lớn, tại vùng E
b
/N
o
lớn, chất lượng
giải mã SCCC có thể tiến tới giải mã tối ưu ML.
2. Giới thiệu một phương pháp tính toán chất lượng
mã SCCC khá chính xác bằng đường biên hiệu
dụng tại vùng "floor" của mã SCCC với bộ đan
xen giả ngẫu nhiên.
3. Sử dụng đường biên này trong thiết kế bộ ghép

×