Cơ sở kỹ thuật TTVT

BÀI GIẢNG

KHOA VIỄN THÔNG 1

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

Chương 4

MÃ HÓA KÊNH KIỂM SOÁT LỖI TRONG HỆ THỐNG THÔNG TIN VÔ TUYẾN SỐ

Nguyen Viet Dam Faculty of Telecommunications I Posts and Telecommunications Institute of Technologies Address: PTIT- Km10-Nguyen Trai Street, HaDong, HaNoi Office : (0)84-(0)4-8549352, (0)84-(0)34- 515484 Mob: 0912699394

Hà nội 01-2017

1

Nguyễn Viết Đảm

 Tên học phần:

Cơ sở kỹ thuật thông tin vô tuyến FUNDAMENTALS OF WIRELESS COMMUNICATION 45 tiết / 03 tín chỉ

 Tổng lượng kiến thức/Số tín chỉ:  Phân bổ chương trình:

 Lý thuyết:  Tiểu luận/Bài tập:  Thực hành:  Tự học:

32 tiết 08 tiết 04 tiết 01 tiết

 Đánh giá

 Chuyên cần:  Thí nghiệm/Thực hành:  Bài tập/Tiểu luận:  Kiểm tra giữa kỳ:  Thi kết thúc (Thi tự luận):

10 % 10 % 10 % 10 % 60 %

2

Cơ sở kỹ thuật TTVT GIỚI THIỆU MÔN HỌC – PHÂN BỔ CHƯƠNG TRÌNH

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT NỘI DUNG

Chương 1. Giới thiệu chung Chương 2. Các dạng tín hiệu trong hệ thống thông tin vô tuyến Chương 3. Không gian tín hiệu và điều chế Chương 4. Mã hóa kênh kiểm soát lỗi trong hệ thống trong hệ thống

thông tin vô tuyến số.

Chương 5. Xử lý kênh vật lý và mã hóa kiểm soát lỗi trong các hệ

thống thông tin di động.

Chương 6. Thiết bị vi ba số Chương 7. Quy hoạch tần số và cấu hình hệ thống truyền dẫn vô

tuyến số.

Chương 8. Phân tích đường truyền vô tuyến số Chương 9. Các thách thức truyền dẫn tốc độ cao trong các hệ thống

thông tin vô tuyến băng rộng

Chương 10. Kỹ thuật đa anten Chương 11. Lập biểu và thích ứng đường truyền

3

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.1. Mở đầu

1

2

Channel Encoder

Modulator

Information source

C h a n n e l

4

3

Channel Decoder

Demodulator

Information sink

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

4

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.1. Mở đầu

Sơ đồ khối hệ thống truyền thông số

5

Sơ đồ khối của máy phát sử dụng mã hóa kênh Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.1. Mở đầu

 Chức năng: Xử lý tín hiệu số để đạt mức độ tin cậy bằng cách bổ xung có hệ thống các ký hiệu dư vào luồng tin phát nhằm phát hiện lỗi và sửa lỗi.

 Vị trí: Sau nguồn tin và trước điều chế sóng mang.

 Lưu ý: Hai tham số thiết kế hệ thống truyền dẫn số: Tham số tín hiệu phát và độ rộng băng tần của kênh truyền dẫn. Hai tham số này cùng với mật độ phổ công suất tạp âm thu xác định Eb/N0.

 Do BER là một hàm đơn trị của Eb/N0, nên khi cố định Eb/N0 có thể cải thiện chất

lượng BER bằng cách mã hoá kênh kiểm soát lỗi.

 Dùng mã hoá kênh kiểm soát lỗi để dung hoà giữa BER và Eb/N0 dB (giảm công suất phát, giảm giá thành phần cứng như sử dụng anten kích thước nhỏ, tái sử dụng tần số....).

 Tham số tỉ lệ mã r =Rb/Rc đánh giá lượng bit dư bổ sung phục vụ cho việc phát hiện và sửa lỗi của mã => luồng bit ra bộ lập mã có tốc độ bít R cao hơn tốc độ bit đầu vào Rb, tăng độ rộng băng tần  giảm hiệu quả sử dụng phổ tần.

6

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.1. Mở đầu

Cơ chế phát hiện và sửa lỗi

Coded

 Phát lại bản tin bị lỗi: Phía thu phát hiện bản tin bị lỗi, sau đó yêu cầu phía phát phát lại bản tin bị lỗi => cần có kênh hồi tiếp.

A

 Phát hiện và sửa lỗi ở phía thu.

F

C

B

Mục đích của mã hoá kênh kiểm soát lỗi  Xác định đoạn số liệu thu bị mắc lỗi.  Giảm thiểu xác suất không phát hiện được

D

lỗi.

E

Uncoded

 Giảm thiểu BER, SER tại một giá trị Eb/N0

tiền định.

Coding gain:

 Tại BER cho trước giảm được Eb/N0, lượng giảm này được gọi là độ lợi của mã hóa kênh tại xác suất lỗi.  Lưu ý các tham số:

For a given bit-error probability, the reduction in the Eb/N0 that can be realized through the use of code:

 Hiệu năng sửa lỗi và độ rộng băng tần  Công suất và độ rộng băng tần  Tốc độ số liệu và độ rộng băng tần  Dung lượng và độ rộng băng tần

7

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.2. Nguyên tắc mã hóa kiểm soát lỗi

8

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.2. Nguyên tắc mã hóa kiểm soát lỗi

Trọng lượng Hamming của vectơ C, ký hiệu w(C), là số

phần tử khác không trong C.

Khoảng cách Hamming giữa hai vectơ C và V, là số phần

tử khác nhau giữa chúng.

Khoảng cách Hamming cực tiểu của mã khối

9

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Khái niệm

 Khối bản tin (độ dài k bit): Luồng thông tin được chia thành các khối có độ dài

bằng nhau

 Từ mã (độ dài n bit): Các bit ở đầu ra của bộ lập mã tương ứng với mỗi bản tin

đầu vào

 Các bit kiểm tra (độ dài (n-k) bits ): Các bit được bổ xung vào các khối bản tin

theo một thuật toán nhất định, thuật toán tuỳ vào loại mã được dùng.

 Mã khối được gọi là tuyến tính nếu kết hợp tuyến tính của hai từ mã bất kỳ cũng

là một từ mã thuộc mã đó. Trường hợp nhị phân tổng của hai từ mã bất kỳ cũng là một từ mã.

Các thông số đặc trưng

 Độ dài khối bản tin k.  Độ dài từ mã n.  Khoảng cách Hamming cực tiểu.  Tỉ lệ mã r=k/n

10

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Tóm tắt: Bộ mã hóa khối tuyến tính thực hiện ánh xạ chuỗi k bit đầu vào thành chuỗi n bit đầu ra

có các đặc điểm:

 Từ mã đầu ra bộ lập mã C chỉ phụ thuộc vào chuỗi bit đầu vào m hiện thời và ma trận tạo

mã G (hay đa thức tạo mã g(x)) mà không phụ thuộc vào chuỗi đầu vào trước đó.

 Các từ mã tạo thành không gian con k chiều trong không gian n chiều (n,k).  Các mã khối tuyến tính được mô tả dưới dạng ma trận tạo mã G có kích thước kn, mỗi từ

mã đầu ra C được viết ở dạng.

11

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

12

Ma trận tạo mã G và Ma trận kiểm tra chẵn lẻ H Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

 Syndrome và phát hiện lỗi

13

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Syndrome và phát hiện lỗi

Modulation

Data source

Format

Channel encoding

channel

Data sink

Format

Demodulation Detection

Channel decoding

Kiểm tra Syndrome: S là syndrome của y, tương ứng với mẫu lỗi e.

14

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

 Tính chất của Syndrome

 Thuộc tính 1: Syndrome chỉ phụ thuộc vào mẫu lỗi e chứ không

phụ thuộc vào từ mã được phát c.

 Thuộc tính 2: Tất cả các mẫu lỗi khác nhau nhiều nhất một từ mã

đều có cùng Syndrome.

 Thuộc tính 3: Syndrome S là tổng các cột của ma trận H tương

ứng với nơi xẩy ra lỗi.

 Thuộc tính 4: Bằng cách giải mã Syndronme, một mã khối tuyến

tính (n,k) có thể sửa được

15

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Giải mã sửa lỗi

zero codeword

coset

Tất cả các mẫu lỗi khác nhau nhiều nhất một từ mã đều có cùng Syndrome

coset leaders

Mỗi phần tử của Coset đều có cùng Syndrome

16

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Giải mã sửa lỗi

17

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

 Minh họa họ mã Hamming

 Xét một họ mã được gọi là mã Hamming có các thông số:

 Xét mã Hamming (7,4) <=> n=7, k=4, m=3

18

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Minh họa họ mã Hamming (7,4)

19

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

 Minh họa họ mã Hamming  Quan hệ giữa dmin và H

Do c là một từ mã thuộc mã  Xét mã Hamming (7,4), tồn tại 16 từ mã thuộc mã đều làm S=cHT=0 cho trong đó có

Bẩy từ mã có trọng lượng = 3 Bẩy từ mã có trọng lượng = 4 Một từ mã có trọng lượng = 7 Một từ mã có trọng lượng = 0

 dmin =3  Mối quan hệ giữa dmin và H là: dmin là số cột nhỏ nhất của ma trận kiểm tra chẵn lẻ H mà khi cộng chúng với nhau bằng 0.

20

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

 Minh họa: xét họ mã Hamming  Quan hệ giữa Syndrome và mẫu lỗi e: Xét mã Hamming (7,4). Vì mã này có dmin =3 nên chỉ có thể sửa được một lỗi  với các mẫu lỗi đơn, áp dụng thuộc tính 3 (Syndrome là tổng các cột của ma trận H tương ứng với nơi xẩy ra lỗi)  cho phép xác định được quan hệ giữa Syndrome và mẫu lỗi.

21

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Minh họa: Xét họ mã Hamming

Nếu phát C = [0111001] qua kênh, phía thu nhận được y = [1111001]  S = [1 0 0] là hàng thứ nhất của HT (cột thứ nhất của H)  xác định được e = [1 0 0 0 0 0 0]  sửa được ycor = [0111001]. Tương tự xét tất cả các trường hợp còn lại  Quan hệ này đối với mã Hamming (7.4) được cho ở bảng 3.2  Từ mã sai là từ mã không thuộc mã đó, khi này S = y.HT  0 vì C.HT =0

Bảng 3.2. Bảng giải mã cho mã Hamming (7.4)

Syndrome

Mẫu lỗi

000

0000000

100

1000000

010

0100000

001

0010000

110

0001000

011

0000100

111

0000010

101

0000001

22

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

 Đa thức tạo mã

 Các bước mã hoá cho một mã vòng (n,k):

 Nhân đa thức bản tin m(x) với xn-k nhận được xn-km(x)  Chia xn-km(x) cho g(x) để được phần dư b(x).  Cộng b(x) với xn-km(x) để nhận được đa thức từ mã

c(x).

23

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Sơ đồ bộ mã hoá vòng

24

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Minh họa: Bộ lập mã vòng (7,4) với g(x)=1+x+x3

x1

x3

x0

25

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.3. Mã khối tuyến tính  Syndrome

Bộ tính Syndrome của mã vòng (n,k) dựa trên đa thức tạo mã

Bộ tính Syndrome cho mã (7,4) được tạo bởi đa thức g(x)=1+x+x3

26

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Với kênh không nhớ, xác suất lỗi bản tin

p là xác suất lỗi bit trên kênh.

Xác suất lỗi bit giải mã

27

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

1

1

p

Đầu vào điều chế

Đầu ra giải điều chế

p

0

0

Mô hình kênh đối xứng không nhớ rời rạc

Lưu ý: Trường hợp hệ thống dùng mã hóa kênh các bit được mã hóa sau đó điều chế, truyền qua kênh. VDụ: điều chế M-PSK trong môi trường kênh AWGN (M>2)

Ec là năng lượng bit được mã hóa kênh và có quan hệ Ec= RcEb

28

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

8PSK

QPSK

29

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Bài tập và mô phỏng

Chương trình NVD_CS88(k) thể khảo sát quá trình tạo mã khối tuyến tính, quá trình tính trọng lượng Hamming cực tiểu, chạy chương trình, thay đổi các tham số đầu vào cho chương trình và phân tích kết quả.

Kết quả ma trận m được tạo ra

0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1

Ma trận Codeword đầu ra bộ mã hoá 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 0 0 1 0 1 1 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 0 0 0 1 0 1 0 0 1 1 1 0 1 1 1 0 1 0 0 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1 0 0 0 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1

30

Trong luong ma cuc tieu Wm = 2 Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Bài tập và mô phỏng

Chương trình NVD8_nkchoose tính toán hiệu năng của mã khối tuyến tính, chạy chương trình, thay đổi các tham số đầu vào chương trình và phân tích kết quả.

31

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

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

Bài tập và mô phỏng

Chương trình NVD_DC649.m tính toán hiệu năng mã khối tuyến tính BCH, chạy chương trình, thay đổi các tham số đầu vào cho chương trình và phân tích kết quả.

32

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

 Mã xoắn khác cơ bản với mã khối  Mã hóa toàn bộ luồng dữ liệu vào một từ mã.  Không cần thiết phân mảnh luồng dữ liệu thành các khối kích thước

cố định.  Tính có nhớ.  Mã khối dựa vào kỹ thuật đại số/kết hợp, mã xoắn dựa vào kỹ thuật

xây dựng (construction techniques).

Tham số đặc trưng của mã xoắn (n,k,K):  k là số bit dịch vào bộ lập mã tại cùng một thời điểm (k bit đồng thời

vào bộ lập mã).

 n là số bit ở đầu ra bộ lập mã khi cho k bit đồng thời vào bộ lập mã.  K là độ dài hạn chế thể hiện số lần dịch cực đại của một nhóm k bit bản tin đầu vào mà nhóm k bit này vẫn còn gây ảnh hưởng tới đầu ra.  r = k/n là tỉ lệ mã (k

trường hợp bộ lập mã khối.

33

Nguyễn Viết Đảm

Sơ đồ khối hệ thống truyền thông cơ bản với mã xoắn Cơ sở kỹ thuật TTVT

1

2

Modulator

Information source

Rate k/n Conv. encoder

Nguyên tắc giải mã ML: Chọn đường dẫn có khoảng cách Hamming cực tiểu so với chuỗi thu.

C h a n n e l

4

3

Demodulator

Information sink

Rate k/n Conv. decoder

34

Nguyễn Viết Đảm

Sơ đồ khối hệ thống truyền thông số cơ bản với mã hóa/giải mã xoắn Cơ sở kỹ thuật TTVT

1

2

Modulator BPSK

Information source

Rate k/n Conv. encoder

N N n ế i

Tạo Vectơ lỗi

b o ạ T

ơ s u a G ố b n â h p

I p ợ h g n ờ ư r T

I I p ợ h g n ờ ư r T

4

3

Demodulator BPSK

Information sink

Rate k/n Conv. decoder

Trường hợp I:

Mô hình hóa và mô phỏng quá trình mã hóa/giải mã xoắn

Trường hợp II: Mô hình hóa và mô phỏng hiệu năng của mã xoắn cho hệ thống

BPSK trong môi trường kênh AWGN.

35

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

Sơ đồ tổng quát của một bộ lập mã xoắn với tỷ lệ mã k/n

36

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

Nguyên lý hoạt động: n bit đầu ra được xác định theo

 Ma trận tạo mã  Chuỗi tạo mã  Đa thức tạo mã  Biểu đồ hình cây  Biểu đồ trạng thái.  Biểu đồ hình lưới

Lưu ý: Đặc tính quan trọng của mã xoắn khác biệt so với mã khối là tính có nhớ  n bit đầu ra không chỉ phụ thuộc vào k bit tin đầu vào đồng thời mà còn phụ thuộc vào (K-1) tập k bit đầu vào trước đó <=> n bit đầu ra không chỉ phụ thuộc vào k bit vào đồng thời mà còn phụ thuộc vào trạng thái trước đó của bộ lập mã (tồn tại 2k(K-1) trạng thái có thể có)

37

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

38

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

Bộ lập mã xoắn (tỉ lệ ½, K=3): 3 bộ ghi dịch trong đó bộ ghi dịch đầu tiên nhận bit dữ liệu đến và các bộ ghi dịch còn lại tạo tính có nhớ của bộ lập mã

First coded bit

Input data bits

(Branch word) Output coded bits

Second coded bit

39

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

Chuỗi bản tin: m = (101)

1 0 0

0 1 0

1 0 1

0 1 0

0 0 1

0 0 0

Bộ lập mã

Bộ mã hóa xoắn tỉ lệ mã hóa ½

40

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn Khởi tạo mộ nhớ trước khi mã hóa bít dữ liệu đầu tiên

(trạng thái toàn không all-zero)

Xóa bộ nhớ sau khi mã hóa bit dữ liệu cuối cùng (trạng thái

toàn không all-zero)

đuôi

Từ mã

Bộ lập mã

=> Chèn các bit đuôi vào chuỗi bit dữ liệu. Số liệu

 Lưu ý rằng: Nếu số bít dữ liệu cần được mã háo là L, độ dài hạn chế là K, số bit đầu vào đồng thời là k, số bit đầu ra là n, thì tỉ lệ mã hóa thực tế reff

41

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

 Đa thức tạo mã: Xác định n đa thức tạo mã, mỗi đa thức cho một bộ cộng modulo-2 có bậc ≤ K-1, và mô tả kết nối của các bộ ghi dịch với bộ cộng modulo-2 tương ứng. Ví dụ:

42

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.4. Mã xoắn

 Biểu đồ trạng thái

 Trạng thái được trình bày bởi nội dung của bộ nhớ.  Tồn tại 2(K-1)k trạng thái.  Biểu đồ trạng thái thể hiện:

 Toàn bộ các trạng thái có thể có;  Mọi chuyển dịch giữa các trạng thái;  Mối quan hệ vào/ra của bộ lập mã.

 Biểu đồ lưới:

Là sự mở rộng của biểu đồ trạng thái với mục đích thể hiện tường minh nguyên lý hoạt động bộ lập mã theo thời gian.

43

Nguyễn Viết Đảm

Đa thức tạo mã, sơ đồ tạo mã, biểu đồ trạng thái, biểu đồ lưới Cơ sở kỹ thuật TTVT

0/00

Đầu ra

vào

0/11

00

Trạng thái

1/11

0/00

1/00

1/11

10

01

0/11

0/10

1/00

0/10

1/01

1/01

0/01

11

0/01

1/10

1/10

Thời gian

44

Nguyễn Viết Đảm

Đa thức tạo mã, sơ đồ tạo mã, biểu đồ trạng thái, biểu đồ lưới Cơ sở kỹ thuật TTVT

1 1 1 0 0 0 1 0 1 1

Tail bits

Input bits

1

0

0

0

11 00

10 00

1 Output bits 00 00

10 00

11 00

11

11

11

11

11

11

11

11

11

11

00

00

00

00

00

10

10

10

10

10

01

01

01

01

01

01

01

01

01

01

10

10

10

10

10

45

Nguyễn Viết Đảm

Giải mã tối ưu Cơ sở kỹ thuật TTVT

 Nếu chuỗi bản tin đầu vào là đồng khả năng (equally likely), thì bộ giải mã tối ưu giảm thiểu xác suất lỗi, là bộ giải mã khả năng giống nhất ML (Maximum likelihood).

 Bộ giải mã ML chọn một từ mã (một đường dẫn) trong toàn bộ các từ mã có thể có (toàn bộ các đường dẫn trên lưới) mà từ mã này (đường dẫn ) làm tối đa hàm khả năng trong đó V là chuỗi thu và là một trong các từ mã (một trong các đường dẫn) thuộc tập các từ mã phát có thể có (mọi đường dẫn trong lưới) :

Nguyên tắc giải mã ML: Chọn đường dẫn có khoảng cách Hamming cực tiểu so với chuỗi thu.

codewords to search!!!

46

Nguyễn Viết Đảm

Giải mã tối ưu Cơ sở kỹ thuật TTVT

 Kênh nhị phân đối xứng (BSC)

1

1

p

Đầu vào điều chế

Đầu ra giải điều chế

p

0

0

1-p

Nếu dm=d(V,C(m)) là khoảng cách Hamming giữa V và C, thì

Size of coded sequence

Nguyên tắc giải mã ML: Chọn đường dẫn có khoảng cách Hamming cực tiểu so với chuỗi thu.

codewords to search!!!

47

Nguyễn Viết Đảm

Next: MAP Next

Giải mã ML cho kênh không nhớ Cơ sở kỹ thuật TTVT

 Do các đặc tính thống kê độc lập của kênh không nhớ, nên hàm khẳ

năng và log hàm khả năng:

 Số đo đường dẫn tại thời điểm ti được gọi là số đo đường dẫn từng

phần => đường dẫn sóng sót là đường dẫn có PM nhỏ nhất tại ti.

 Nguyên tắc giải mã ML:

Chọn một đường dẫn có số đo nhỏ nhất trong tất cả các đường dẫn trong lưới. Đường dẫn này là đường dẫn "gần" với chuỗi phát nhất  Chọn đường dẫn có khoảng cách Hamming cực tiểu so với chuỗi thu.

48

Nguyễn Viết Đảm

Giải mã quyết định cứng và quyết định mềm Cơ sở kỹ thuật TTVT

 Quyết định cứng:

 Bộ giải điều chế quyết định cứng thực hiện quyết định "0" hoặc "1" và không cung cấp thông tin khác cho bộ giải mã => đầu ra của bộ giải điều chế chỉ là số "0" hoặc "1" (đầu ra được lượng tử thành 2 mức) được gọi là “hard-bits”.

 Giải mã dựa trên các bit cứng "hard-bits" được gọi là “giải mã quyết định cứng”.

 Quyết định mềm:

 Bộ giải điều chế cung cấp cho bộ giải mã một số thông tin phụ về đánh giá mức

độ tin cậy để quyết định.

 Các đầu ra của bộ giải điều chế được gọi là các bít mềm (soft-bits) được lượng tử

thành nhiều mức.

 Quyết định dựa trên các bít mềm được gọi là "giải mã quyết định mềm".

Giải mã quyết định mềm đạt được độ lợi khoảng 2 dB trong kênh AWGN, và 6 dB trong kênh phađinh so với giải mã quyết định cứng.

Hard and Soft decoding decisions

49

Nguyễn Viết Đảm

Thuật toán giải mã Viterbi Cơ sở kỹ thuật TTVT

 Thuật toán Viterbi thực hiện giải mã theo nguyên tắc khả

năng giống nhất ML (hợp lý cực đại).

 Thuật toán tìm trong lưới một đường dẫn có số đo nhỏ

nhất (maximum correlation or minimum distance).  Xử lý tín hiệu đầu ra bộ giải điều chế theo kiểu lặp.

 Tại mỗi bước trong lưới, thực hiện so sánh số đo của tất cả các đường dẫn hội nhập vào mỗi trạng thái, chỉ giữ lại đường dẫn có số đo nhỏ nhất (khoảng cách nhỏ nhất) được gọi là đường dẫn sống sót (survivor) cũng như số đo của đường dẫn đó.

 Tiếp tục đi vào trong lưới và loại bỏ khử các đường dẫn ít có khả

năng nhất (least likely path).

 Giảm mức độ phức tạp giải mã còn L2K-1!

50

Nguyễn Viết Đảm

Thuật toán giải mã Viterbi Cơ sở kỹ thuật TTVT

51

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT Tại thời điểm i: k bit vào và n ký hiệu đầu ra đồng thời bộ lập mã  k bit/nhánh, n ký hiệu/nhánh

00

00

00

00

00

2

11

11

11

11

11

11 0

0 00 2

10

1

10

10

01

01

1

1

01

01

1

10

52

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT Đánh nhãn cho tất cả các nhánh bởi số đo nhánh (khoảng cách Hamming giữa Vi và Ci)

0

2

1

1

1

2

1

0

0

1

1

0

0

2 1

0

1

2

2

1

1

Tại thời điểm i: k bit vào và n ký hiệu đầu ra đồng thời bộ lập mã  k bit/nhánh, n ký hiệu/nhánh

53

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

Lỗi cụm, phâdinh sâu

i=2

2

0

2

1

2

1

1

1

0

0

0

0

1

1

0

2 1

0

1

2

2

1

1

54

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=3

2

3

0

2

1

2

1

1

1

0

0

3

0

0

1

1

0

2 1

0

0

1

2

2

1

2

1

55

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=4

2

3

0

0

2

1

1

2

1

1

0

0

0

3

2

1

0

1

1

2

0

0

0

3

1

2

2

1

2

3

1

56

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=5

2

3

0

1

0

2

1

2

1

1

1

0

0

0

3

2

0

1

1

1

2

0

0

0

3

2

1

2

2

1

2

3

1

57

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=6

2

3

0

1

2

0

2

1

2

1

1

1

0

0

0

3

2

0

1

1

1

2

0

0

0

3

2

1

2

2

1

2

3

1

58

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

2

3

0

1

2

0

2

1

2

1

1

1

0

0

0

3

2

0

1

1

1

2

0

0

0

3

2

1

2

2

1

2

3

1

59

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

Lỗi phân tán

00

00

00

00

00

11

11

11

11

11

11

00

10

10

10

01

01

01

01

10

60

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

2

1

1

1

1

0

1

1

1

1

1

0

1 2

0

2

0

2

0

2

61

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

0

2

2

1

1

1

1

1

0

1

0

1

1

1

0

1 2

0

0

2

2

0

2

62

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=2

2

0

2

1

1

1

1

1

0

1

0

1

1

1

0

1 2

0

0

2

2

0

2

63

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=3

2

3

0

2

1

1

1

1

1

0

1

3

0

1

1

1

0

1 2

0

0

0

2

2

0

2

2

64

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=4

2

3

1

0

2

1

1

1

1

1

0

1

0

3

1

1

1

1

2

1

0

0

0

2

0

2

2

0

2

3

2

65

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=5

2

3

1

0

2

2

1

1

1

1

1

0

1

0

3

1

1

1

1

2

1

0

0

0

2

1

0

2

2

0

2

3

2

66

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=6

2

3

1

0

2

2

2

1

1

1

1

1

0

1

0

3

1

1

1

1

2

1

0

0

0

2

1

0

2

2

0

2

3

2

67

Nguyễn Viết Đảm

Minh họa giải mã Viterbi quyết định cứng Cơ sở kỹ thuật TTVT

i=6

2

3

1

0

2

2

2

1

1

1

1

1

0

1

0

3

1

1

1

1

2

1

0

0

0

2

1

0

2

2

0

2

3

2

68

Nguyễn Viết Đảm

Mã hoá xoắn ở W-CDMA Cơ sở kỹ thuật TTVT

x1 x2 x5 x7 x6 x8 x3 x0 x4

k0 = 1; r =k/n=1/2; G=[g0;g1] G = [1 0 1 1 1 0 0 0 1;1 1 1 1 0 1 0 1 1]

x1 x2 x3 x4 x8 x6 x5

x7

x0

69

k0 = 1; r =k/n=1/3; G=[g0;g1;g2] G = [1 0 1 1 0 1 1 1 1;1 1 0 1 1 0 0 1 1;1 1 1 0 0 1 0 0 1]

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4 4.6. MÃ TURBO

4.6.1. Khái quát mã Turbo 4.6.2. Các mã xoắn hệ thống 4.6.3. Sơ đồ bộ tạo mã Turbo 4.6.4. Giải thuật giải mã MAP 4.6.4. 1. Nguyên lý MAP 4.6.4.2. Biểu thức số đo nhánh k,i(m) 4.6.4. 3. Biểu thức số đo trạng thái thuận k(m) 4.6.4. 4. Biểu thức số đo trạng thái ngược k(m)

4.6.5. Giải mã Turbo 4.5.6. Giải mã Turbo lặp 4.6.7. Hiệu năng của mã Turbo 4.6.8. Mã Turbo trong các hệ thống thông tin di động 3G và 4G

70

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.1. Khái quát mã Turbo

 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”

71

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.1. Khái quát mã Turbo

1

2

Channel Encoder

Modulator

Information source

C h a n n e l

4

3

Channel Decoder

Information sink

Demodulator (Soft Output)

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

Nguyễn Viết Đảm

Sơ đồ khối hệ thống truyền thông cơ bản với mã Turbo Cơ sở kỹ thuật TTVT

2

1

Modulator

Information source

Turbo Encoder (PCCC-RSC)

Why do you study ?

C h a n n e l

3

4

Information sink

Turbo Decoder (MAP-SISO)

Demodulator (Soft Output)

73

Nguyễn Viết Đảm

Giải mã quyết định cứng và quyết định mềm Cơ sở kỹ thuật TTVT

 Quyết định cứng:

 Bộ giải điều chế quyết định cứng thực hiện quyết định "0" hoặc "1" và không cung cấp thông tin khác cho bộ giải mã => đầu ra của bộ giải điều chế chỉ là số "0" hoặc "1" (đầu ra được lượng tử thành 2 mức) được gọi là “hard-bits”.

 Giải mã dựa trên các bit cứng "hard-bits" được gọi là “giải mã quyết định cứng”.

 Quyết định mềm:

 Bộ giải điều chế cung cấp cho bộ giải mã một số thông tin phụ về đánh giá mức

độ tin cậy để quyết định.

 Các đầu ra của bộ giải điều chế được gọi là các bít mềm (soft-bits) được lượng tử

thành nhiều mức.

 Quyết định dựa trên các bít mềm được gọi là "giải mã quyết định mềm".

 Lưu ý:

Giải mã quyết định mềm đạt được độ lợi khoảng 2 dB trong kênh AWGN, và 6 dB trong kênh phađinh so với giải mã quyết định cứng.

Hard and Soft decoding decisions

74

Nguyễn Viết Đảm

note

Cơ sở kỹ thuật TTVT

4.6.1. Khái quát mã Turbo

 Turbo Decoding is an instance of Bayesian Estimation  Turbo Decoding:

 It is similar to separate signal

 Try to separate two different components: Noise and Useful transmitted signal  We, generally, only have one data stream: Encoder in the transmitter introduces

correlations, in a controlled manner, used to separate signal from noise  The MAP algorithm was based on the estimation of the probability of a decoded bit given the received sequence. It produces soft outputs which can be used in an iterative process to increase the reliability of the final decision.

 Extensions to multiple data streams are possible  Aim: Maximize the Mutual Information between transmitted and decoded

signals  Use Channel Codes to achieve Channel Capacity ➔ There is a high demand of

powerful Channel Codes, which are of practical application (encode and decode easily)

 Some channels, like multipath channels can be seen as a form of Source

Encoding, in which the taps can be estimated. Turbo Decoding is possible in this case and is called: Turbo Channel Equalization

75

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.1. Khái quát mã Turbo

How should Channel Codes look like?  Shannon has shown that large block-length random codes

can achieve channel capacity

 These codes, must have enough structure to reduce

encoding/decoding complexity.

 Structured codes under perform random codes

“Almost all codes are good, except those that we can think of“

Solution:

Make the code appear random, while maintaining enough structure to allow decoding

➔ pseudo-random interleaver

Lưu ý: Để đạt được hiệu năng gần với giới hạn dung lượng kênh Shannon, cần thực hiện giải mã có độ phức tạp vô tận hoặc gần như vô tận.

76

Nguyễn Viết Đảm

4.6.1. Khái quát mã Turbo

 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.

77

Cơ sở kỹ thuật TTVT What does “Turbo” mean?

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.1. Khái quát mã Turbo

 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:

Đạt được dấu bằng khi hàm truyền đạt có dạng: 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ễ.

78

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.1. Khái quát mã Turbo

Parallel / Serial Concatenated Codes

Serial encoder concatenation

Serial decoder concatenation

Parallel encoder concatenation

79

Parallel decoder concatenation Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Bayes Rule and MAP decoding (single bit case...)

P(AB) = P(A|B)P(B) = P(B|A)P(A)

80

Nguyễn Viết Đảm

Bayes Rule and MAP decoding Cơ sở kỹ thuật TTVT

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 hoạ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

81

Nguyễn Viết Đảm

note

Bayes Rule and MAP decoding Cơ sở kỹ thuật TTVT

P(AB) = P(A|B)P(B) = P(B|A)P(A)

APP = P(d=i|x) được coi là “tinh lọc” TT tiên nghiệm về dữ liệu

Với mã hệ thống, chỉ ra rằng đầu ra LLR (đầu ra mềm) của bộ giải mã là:

82

Nguyễn Viết Đảm

note

BCJR decoding algorithm = MAP decoding algorithm Cơ sở kỹ thuật TTVT

 Used to estimate the APP probabilities of the states and transitions of a Markov source observed through a noisy discrete memoryless channel (DMC), given the observations and the a-priori knowledge

 The BCJR algorithm belongs to the class of Bayesian Estimation

algorithms

 Mostly used in the log domain, which simplifies computations

 log-MAP  Max-log-MAP

innovations

complete received sequence

 Forward and backward recursions

 A-Posteriori Probability is given as:

83

Nguyễn Viết Đảm

Bayes Rule and MAP decoding Cơ sở kỹ thuật TTVT

thành phần Ba đầu ra LLR của bộ giải mã hệ thống:  Số đo kênh;  Thông tin tiên nghiệm của dữ liệu;  Thông tin

ngoại lai từ quá trình giải mã.

Soft-input/soft-output decoder model

84

Nguyễn Viết Đảm

Giải mã quyết định cứng và quyết định mềm Cơ sở kỹ thuật TTVT

 Quyết định cứng:

 Bộ giải điều chế quyết định cứng thực hiện quyết định "0" hoặc "1" và không cung cấp thông tin khác cho bộ giải mã => đầu ra của bộ giải điều chế chỉ là số "0" hoặc "1" (đầu ra được lượng tử thành 2 mức) được gọi là “hard-bits”.

 Giải mã dựa trên các bit cứng "hard-bits" được gọi là “giải mã quyết định cứng”.

 Quyết định mềm:

 Bộ giải điều chế cung cấp cho bộ giải mã một số thông tin phụ về đánh giá mức

độ tin cậy để quyết định.

 Các đầu ra của bộ giải điều chế được gọi là các bít mềm (soft-bits) được lượng tử

thành nhiều mức.

 Quyết định dựa trên các bít mềm được gọi là "giải mã quyết định mềm".

 Lưu ý:

Giải mã quyết định mềm đạt được độ lợi khoảng 2 dB trong kênh AWGN, và 6 dB trong kênh phađinh so với giải mã quyết định cứng.

Hard and Soft decoding decisions

85

Nguyễn Viết Đảm

Back Next

Giải thuật Viterbi VA và MAP Cơ sở kỹ thuật TTVT

 Giống nhau:  Giải thuật Viterbi VA: Cộng số đo nhánh vào số đo trạng thái. Sau đó, so sánh và chọn khoảng cách nhỏ nhất (khả năng giống nhất ML) để tạo số đo trạng thái tiếp theo (tích lũy), quá trình này được gọi cộng - so sánh - chọn (ACS: Add-Compare-Select).

 Giải thuật MAP: Nhân (hoặc cộng trong miền logarit) số đo trạng thái với số đo nhánh. Sau đó, thay vì so sánh chúng với nhau là cộng chúng để tạo thành số đo trạng thái thuận (hoặc ngược) tiếp theo như hình tính toán số đo trạng thái thuận, nghịch và nhánh.

 Khác nhau:  Giải thuật Viterbi VA: Tìm chuỗi (đường dẫn) giống nhất => liên tục

so sánh và lựa chọn để tìm ra đường dẫn tốt nhất;

 Giải thuật MAP: Tìm con số mềm (Likelihood hoặc log-likelihood), => sử dụng tất cả các số đo từ tất cả các chuyển dịch có thể có trong một khoảng thời gian để tiệm cận đến thống kê toàn bộ tốt nhất đối với bit dữ liệu ở khoảng thời gian đó.

86

Nguyễn Viết Đảm

The Soft-Input Soft-Output Module Cơ sở kỹ thuật TTVT

 Intrinsic Information

Collected Information from the Channel about the sequence

Extrinsic information of a MAP decoder For a systematic code, each quantity computed by the MAP decoder is equal to the sum of the noisy information (x, the data received at the decoder input) and the extrinsic information Notice some interesting properties of the extrinsic information

 A-Priori Information

i. ii.

Knowledge about the sequence before the decoding starts

 Soft-Output

iii. iv.

Decoding process generates the A - Posteriori Probabilities (APP)

its distribution is almost Gaussian, it depends on the redundant information and all other received information except produced by the encoder, it is independent of the x, it generally has the same sign as the transmitted symbol dk, therefore it may improve the associated with each decoded data.

 Extrinsic Information

Gain resulting from the decoding process. Corresponds to the Innovations in the Kalman Filters.

87

All these properties allow us to use the extrinsic information produced by a MAP decoder as an input to another MAP decoder. The MAP algorithm is very sensitive to correlation between consecutive symbols Nguyễn Viết Đảm

4.6.1. Khái quát mã Turbo

“TurboCodes“ are known which approach the Shannon limit by 0.045 dB

Cơ sở kỹ thuật TTVT Some results from TurboDecoding

from:

“Near the Shannon limit error- correcting coding and decoding: turbocodes“

Berrou and Glavieux, ICC'93

88

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.2. Mã xoắn hệ thống

Mã xoắn hệ thống và phi hệ thống

Mã xoắn đệ quy và không hồi quy

ck1

dk

ck1

ck

ck

ck2 Mã xoắn không hồi quy

ck2 Mã xoắn không hệ thống

Mã xoắn hồi quy

Mã xoắn hệ thống

Mã xoắn hệ thống hồi quy

Trong họ mã SC, mã hệ thống hồi quy RSC có hiệu năng tốt hơn mã phi hệ thống khi SNR thấp.

dk

Đầu vào dk

89

Mã xoắn hệ thống SC: bit thông tin đựơc trực tiếp đưa đến đầu ra, ngược lại là mã xoắn phi hệ thống.

ck Mã xoắn hệ thống hồi quy Nguyễn Viết Đảm

Ma trận tạo mã, sơ đồ tạo mã, biểu đồ lưới của mã Turbo Cơ sở kỹ thuật TTVT

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

Mã RSC

Trạng thái D0,kD1,k

Trạng thái D0,k+1D1,k+1 00

Nhánh Ck=(dk,ck)

11

11

00

10

01

Thời gian

90

01 10

Nguyễn Viết Đảm

Đặc điểm lưới của mã Turbo/Trạng thái đầy đủ và bit đuôi Cơ sở kỹ thuật TTVT

Tail bits=M

0 1 1 1 0

00 00 00 00 00 S0=00

11 11 11

11 11 11 S1=10 00

10 10 10 S2=01

01

01

01

01

k=3

k=4

k=6

k=1

k=2

k=5

10 S3=11

91

00 11 10 11 00

Nguyễn Viết Đảm

Đặc điểm lưới của mã Turbo/Trạng thái đầy đủ và bit đuôi Cơ sở kỹ thuật TTVT

S0=00 00 00 00 00 00 00 S0=00 11 11 11 11

11

11

11 11 S1=10 S1=10 00 00

10 10 10 10 S2=01 S2=01 01 01 01

01

01 01 10

10

S3=11

k=N+1

k=3

k=N

k=1

k=2

k=4

k=N-M+1

k=L

Tail bits=M

S3=11

1 0 1 0 1 00 00 00 00 00 S0=00

11 11 11

11

11

11

S1=10 00

10 10 10

S2=01

01 01

k=3

k=4

k=6

k=1

k=2

k=5

01 01 10 S3=11

92

11 01 01 11 10

Nguyễn Viết Đảm

note

Cơ sở kỹ thuật TTVT Mã xoắn hệ thống hồi quy

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

Đầu ra: C1,N=(C1, C2,…Ck,., CN) , Ck= (dk, ck), dk là 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.

Mã xoắn hồi quy hệ thống: tỷ lệ ½; M=2; K=3; Q=1112=78 và g1=1012=58. (đa thức 5/7)

Lưới của RSC: Thể hiện tất cả các chuyển đổi trạng thái có thể có. 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 và trạng thái tiếp theo); (ii) đầu ra được mã hóa ck; (iii) bit số liệu không mã hóa dk.

93

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Mã xoắn hệ thống hồi quy

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

Đầu ra: C1,N=(C1, C2,…Ck,., CN) , Ck= (dk, ck), dk là 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.

Mã xoắn hồi quy hệ thống

Lưới của RSC: Thể hiện tất cả các chuyển đổi trạng thái có thể có. Mỗi nhánh cung cấp ba thông tin: (i) trạng thái của nhánh (trạng thái hiện tại và trạng thái tiếp theo); (ii) đầu ra được mã hóa ck; (iii) bit số liệu không mã hóa dk.

Giải thuật Viterbi: Tìm một đường dẫn trên lưới (tất cả các đường dẫn có thể) giống với chuỗi thu nhất. Giải thuật MAP: đưa ra các đầu ra mềm. Giải thuật này dựa trên việc tìm kiếm bit có xác suất lớn nhất, khi biết chuỗi bit bị tạp âm => dùng cho giải mã Turbo

94

Đườ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 Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.3. Sơ đồ tạo mã Turbo

 Nguyên lý hoạt

động:

Khóa CM ở vị trí A: N bit số liệu được đưa ra trực tiếp, đồng thời được dịch vào các bộ mã hóa RSC. Đầu ra của bộ mã hóa là N tổ hợp hai bit hoặc ba bit tùy vào chon tỷ lệ mã là r=1/2 hoặc 1/3.

Bộ tạo mã turbo dựa trên hai bộ bộ tạo mã RSC

Khóa CM ở vị trí B: Đưa các bộ mã hóa vào trạng thái "0" và tạo ra các ký hiệu đuôi kết cuối chuỗi ký hiệu mã đầu ra cho N bit số liệu đầu vào.

 Hiệu năng của mã turbo: Phụ thuộc vào kiểu và độ sâu của bộ đan xen (cấu trúc bộ đan xen ảnh hưởng lên tính chất khoảng cách của mã turbo, hay khoảng các lớn nhất giữa các ký hiệu cạnh nhau ở đầu vào)

95

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.3. Sơ đồ tạo mã Turbo

 Hiệu năng của mã turbo

phụ thuộc vào:

 kích thước và thiết kế (kiểu và

độ sâu) của bộ đan xen;  các bộ mã hóa thành phần;  số lần lặp giải mã.

Giả sử dk, k{1,2,….,N} là toàn bộ số liệu mã cần được đan xen: coi đây là một mảng ba 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 đan xen. Sử dụng chương trình kiểu Pascal:

For I:=1toN

Indata[int[I]:=dat[I]

 Quá trình đan xen: Số liệu được viết vào bộ nhớ theo trình 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 giữa các ký hiệu cạnh nhau ở đầu vào.

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 độ phức tạp).

96

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP 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:

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:

là bit thông tin không được mã hóa (số liệu thông tin); là bit thông tin được mã hóa (số liệu kiểm tra chẵn lẻ); là tạp âm AWGN trung bình không và phương sai 2 ; k = 1,2,..., N;

ak = (1-2dk): bk= (1-2ck): nxk, nyk : 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

97

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP

 Mục đích của giải mã MAP: Tìm ước tính bit số liệu phát 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(dk=0|R1,N); P(dk=1|R1,N) là xác suất phát hiện dk=0 và dk=1 khi đã thu được chuỗi R1,N

Giá trị 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:

98

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP  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à

 Đặt λk,i(m) = P(dk=i,Sk=m|R1,N) là xác suất mà tại thời điểm k, trạng thái của bộ giải mã là Sk=m, bit phát dk=i khi cho trước chuỗi ký hiệu thu R1,N (đã thu được chuỗi R1,N); với i=0 hoặc 1 và cộng tất cả các trạng thái có thể có:

99

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP  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;

R1,N=[R1,k-1,Rk,Rk+1,N] là chuỗi ký hiệu

thu từ R1 đến RN

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 là số phần tử nhớ, thì APP là

 Đặ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:

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ã

100

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Back to MAP

4.6.4. Giải thuật giải mã MAP  Nếu Sk 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ì

 Định nghĩa xác suất liên hiệp λk,i(m)  Định luật Bayes

101

Là xác suất hậu định mà bit dữ liệu được giải mã dk=i bằng cách lấy tổng trên tất cả các trạng thái

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP

 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

Lưu ý rằng: R1,k-1 chỉ liên quan đến trạng thái Sk=m 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 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.

Lưu ý rằng: Rk+1,N chỉ liên quan đến giá tri bit dk và 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 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).

102

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP

 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.

=> Kết quả là:

103

Nguyễn Viết Đảm

Summary of the state Metrics and Branch metrics Cơ sở kỹ thuật TTVT

k,i(m)

Formard State Metrics

Reverse State Metrics

b) Số đo trạng thái ngược:

a) Số đo trạng thái thuận:

Giải thuật MAP:

(cộng

Nhân trong miền logarit) số đo trạng thái với số đo nhánh. Sau đó, thay vì so sánh chúng với nhau là cộng chúng để tạo thành số đo trạng thái thuận (hoặc ngược) tiếp theo.

Số đo nhánh:

bj(m) là trạng thái đi lùi về phía trước tương ứng với đầu vào j

f(j,m) là trạng thái tiếp theo đã cho trước đầu vào j và trạng thái m

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

104

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP 4.6.4.2. Biểu thức số đo nhánh k,i(m) [Phụ lục]

2,0(00)

Nhánh xuất phát tại thời điểm tk=2 từ trạng thái m=00 khi bit vào dk=2 = i=0 và tiến đến trạng thái m=00 tại thời đ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

k,i(m)

Ví dụ: Xét hai nhánh trên hình khi k,i=1/2; 2 là phương sai tạp âm chuẩn hoá (Eb): 2=N0/(2 Eb)

Thể hiện số đo nhánh k,i(m) trên lưới

105

Nguyễn Viết Đảm

k,i(m)

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP 4.6.4.3. Biểu thức số đo trạng thái thuận k(m) [Phụ lục]

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 m tại thời điểm k dưới tác động của bit dk-1=j với j=0/1.

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ì 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 ; (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)] Tất cả các k(m) được tính trong điều kiện chúng được khởi đầu đúng như: 1(m=0) = 1 và 1(m≠0) = 0

Ví dụ: tính 2(00) xét điều kiện khởi đầu cho thí dụ theo trên:

Trình bày số đo trạng thái thuận k(m) trên lưới

2(00) = [1(00) 1,0(00) + 1(01) 1,1(01)] = 1,0(00)

106

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.4. Giải thuật giải mã MAP 4.6.4.4. Biểu thức số đo trạng thái ngược k(m) [Phụ lục]

Thay vì tính tất cả  thuận theo thời 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.

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) 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:

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 trong trường hợp L=1 và M=2 là:

Trình bầy k,i(m) trên lưới

3(01) = 4,0(00) 3,1(01) = 3,1(01)

107

Nguyễn Viết Đảm

Back

Summary of the MAP algorithm Cơ sở kỹ thuật TTVT Logarit hàm khả giống LLR cho từng dk

Số đo nhánh k,i(m)

k,i(m)

A - Priori Channel Values

Note: The MAP algorithm is very sensitive to correlation between consecutive symbols because expressions k(m), k,i(m), k(m) are derived under the hypothesis that the input symbols are totally decorrelated [7].

k(m)

k(m)

Số đo trạng thái thuận k(m)

Số đo trạng thái ngược k(m)

Hồi quy ngược được khởi đầu (buộc trạng thái cuối cùng trở về 0):

initial conditions

1(m=0) = 1 và 1(m≠0) = 0

L+M+1(m=0) = 1 và L+M+1(m≠0) = 0

108

Tất cả các k(m) được tính trong điều kiện được khởi đầu đúng:

Initial conditions Nguyễn Viết Đảm

Back

Summary of the MAP algorithm Cơ sở kỹ thuật TTVT

109

Nguyễn Viết Đảm

Back

Summary of the MAP algorithm Cơ sở kỹ thuật TTVT

110

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo  Nguyên lý giải mã turbo dùng giải thuật MAP

 Các ký hiệu thu từ kênh tạp âm Gauss trắng cộng (AWGN) có dạng:

, i=1,2;

 ak là bit thông tin không được mã hóa (bit thông tin);  bki là bit thông tin được mã hóa (bit kiểm tra chẵn lẻ); i=1,2  nxk,nyki 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.

LLR của bit thông tin dk với điều kiện thu được xk

P(dk =+1|xk) và P(dk =-1|xk) là xác suất hậu định APP, là xác suất phát dk=+1 và dk=-1 khi đã thu được xk; p(xk|dk=i) là mật độ xác suất của tín hiệu thu xk khi đã phát dk; p(xk) là mật đô xác xuất của tín hiệu thu xk; P(dk=i),i=0/1 là xác suất phát dk (thông tin tiên nghiệm) 111

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo

h n ê K

N G W A

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

Đầu vào bộ giải mã tiếp theo

112

Nguyễn Viết Đảm

Bayes Rule and MAP decoding Cơ sở kỹ thuật TTVT

thành phần Ba đầu ra LLR của bộ giải mã hệ thống:  Số đo kênh;  Thông tin tiên nghiệm của dữ liệu;  Thông tin

ngoại lai từ quá trình giải mã.

Soft-input/soft-output decoder model

113

Nguyễn Viết Đảm

The Soft-Input Soft-Output Module Cơ sở kỹ thuật TTVT

 Intrinsic Information

Collected Information from the Channel about the sequence

Extrinsic information of a MAP decoder For a systematic code, each quantity computed by the MAP decoder is equal to the sum of the noisy information (x, the data received at the decoder input) and the extrinsic information Notice some interesting properties of the extrinsic information

 A-Priori Information

i. ii.

Knowledge about the sequence before the decoding starts

 Soft-Output

iii. iv.

Decoding process generates the A - Posteriori Probabilities (APP)

its distribution is almost Gaussian, it depends on the redundant information and all other received information except produced by the encoder, it is independent of the x, it generally has the same sign as the transmitted symbol dk, therefore it may improve the associated with each decoded data.

 Extrinsic Information

Gain resulting from the decoding process. Corresponds to the Innovations in the Kalman Filters.

114

All these properties allow us to use the extrinsic information produced by a MAP decoder as an input to another MAP decoder. The MAP algorithm is very sensitive to correlation between consecutive symbols Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo  Giải mã vòng hồi

tiếp (lặp)

Feedback for the next Iteration

tiên nghiệm của dữ liệu;

Ba thành phần đầu ra LLR của bộ giải mã hệ thống:  Số đo kênh;  Thông tin Lý tưởng, số đo kênh và TT ngoại lai bị tạp âm hóa một chách không tương quan => TT ngoại lai được coi là một quan trắc mới về dk bởi bộ giải mã khác để tạo ra quá trình lặp.

Feedback Loop

 Thông tin ngoại lai từ quá trình giải mã.

Học thuật hóa các bài toán kỹ thuật  Phát biểu bài toán.  Công thức hóa bài toán.  Mô hình hóa, sơ đồ

hóa.

 Công thức hóa sơ đồ và sơ đồ hóa công thức.  Công thức hóa nguyên

lý hoạt động

 Thuật

toán hóa và

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)

chương trình hóa.  Mô phỏng kiểm chứng.

115

MAP rất nhạy cảm với sự tương quan giữa các ký hiệu liền kề

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo lặp

116

D

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo lặp

117

D

Đan xen, phân tán lỗi cụm (dãn cách các ký hiệu liền kề) Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo lặp

118

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.5. Giải mã Turbo lặp

119

D

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.7. Hiệu năng của mã Turbo

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;  Số lần giải mã lặp.

 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ã => để đạt đựợc chất lượng tốt đò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 độ phức tạp).

 Sau 18 lần lặp, xác suất lỗi bit thấp hơn 10-5 tại Eb/N0= 0,7dB. Khi số lần lặp lớn, mức độ cải thiện chất lượng theo số lần lặp.

Các xác suất lỗi bit phụ thuộc vào số lần lặp và Eb/N0: (Mã turbo: 16 trạng thái, tỷ lệ 1/2, K=5 với g1=[11111], g2=[10001]; kích thước đan xen 256x256)

120

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.8. Mã Turbo trong hệ thống TTDĐ 3G và 4G

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)

121

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

4.6.7. Hiệu năng của mã Turbo

 Hiệu năng mã turbo: cho phép giảm SNR yêu cầu 6 dB nhưng lại trả giá về băng thông => cần cân nhắc dung hòa giữa SNR và băng thông.

 Độ lợi mã hóa G:

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

122

Nguyễn Viết Đảm

MÃ TURBO TRONG WCDMA Cơ sở kỹ thuật TTVT

Mô phỏng hiệu năng BER với đa thức:

,

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 ]

123

Nguyễn Viết Đảm

MÃ TURBO TRONG WCDMA Cơ sở kỹ thuật TTVT

Mô phỏng hiệu năng BER cho W-CDMA với đa thức:

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 ]

124

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Rút ra công thức Logarit hàm khả giống LLR cho từng dk

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:

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:

là bit thông tin không được mã hóa (số liệu thông tin); là bit thông tin được mã hóa (số liệu kiểm tra chẵn lẻ); là tạp âm AWGN trung bình không và phương sai 2 ; k = 1,2,..., N;

ak = (1-2dk): bk= (1-2ck): nxk, nyk : 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

125

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Rút ra công thức Logarit hàm khả giống LLR cho từng dk  Mục đích của giải mã MAP: Tìm ước tính bit số liệu phát 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(dk=0|R1,N); P(dk=1|R1,N) là xác suất phát hiện dk=0 và dk=1 khi đã thu được chuỗi R1,N

Giá trị 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:

126

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Rút ra công thức Logarit hàm khả giống LLR cho từng dk  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à

 Đặt λk,i(m) = P(dk=i,Sk=m|R1,N) là xác suất mà tại thời điểm k, trạng thái của bộ giải mã là Sk=m, bit phát dk=i khi cho trước chuỗi ký hiệu thu R1,N (đã thu được chuỗi R1,N); với i=0 hoặc 1 và cộng tất cả các trạng thái có thể có:

127

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Rút ra công thức Logarit hàm khả giống LLR cho từng dk  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;

R1,N=[R1,k-1,Rk,Rk+1,N] là chuỗi ký hiệu

thu từ R1 đến RN

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 là số phần tử nhớ, thì APP là

 Đặ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:

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ã

128

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Back to MAP

Rút ra công thức Logarit hàm khả giống LLR cho từng dk  Nếu Sk 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ì

 Định nghĩa xác suất liên hiệp λk,i(m)  Định luật Bayes

129

Là xác suất hậu định mà bit dữ liệu được giải mã dk=i bằng cách lấy tổng trên tất cả các trạng thái

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Rút ra công thức Logarit hàm khả giống LLR cho từng dk  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

Lưu ý rằng: R1,k-1 chỉ liên quan đến trạng thái Sk=m 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 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.

Lưu ý rằng: Rk+1,N chỉ liên quan đến giá tri bit dk và 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 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).

130

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Rút ra công thức Logarit hàm khả giống LLR cho từng dk  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.

=> Kết quả là:

131

Nguyễn Viết Đảm

Summary of the state Metrics and Branch metrics Cơ sở kỹ thuật TTVT

k,i(m)

Formard State Metrics

Reverse State Metrics

b) Số đo trạng thái ngược:

a) Số đo trạng thái thuận:

Giải thuật MAP:

(cộng

Nhân trong miền logarit) số đo trạng thái với số đo nhánh. Sau đó, thay vì so sánh chúng với nhau là cộng chúng để tạo thành số đo trạng thái thuận (hoặc ngược) tiếp theo.

Số đo nhánh:

bj(m) là trạng thái đi lùi về phía trước tương ứng với đầu vào j

f(j,m) là trạng thái tiếp theo đã cho trước đầu vào j và trạng thái m

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

132

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Biểu thức số đo nhánh k,i(m) [Phụ lục]

2,0(00)

Nhánh xuất phát tại thời điểm tk=2 từ trạng thái m=00 khi bit vào dk=2 = i=0 và tiến đến trạng thái m=00 tại thời đ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

k,i(m)

Ví dụ: Xét hai nhánh trên hình khi k,i=1/2; 2 là phương sai tạp âm chuẩn hoá (Eb): 2=N0/(2 Eb)

Thể hiện số đo nhánh k,i(m) trên lưới

133

Nguyễn Viết Đảm

k,i(m)

Cơ sở kỹ thuật TTVT

Biểu thức số đo trạng thái thuận k(m) [Phụ lục]

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 m tại thời điểm k dưới tác động của bit dk-1=j với j=0/1.

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ì 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 ; (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)] Tất cả các k(m) được tính trong điều kiện chúng được khởi đầu đúng như: 1(m=0) = 1 và 1(m≠0) = 0

2(00) = [1(00) 1,0(00) + 1(01) 1,1(01)] = 1,0(00)

Ví dụ: tính 2(00) xét điều kiện khởi đầu cho thí dụ theo trên:

Trình bày số đo trạng thái thuận k(m) trên lưới

134

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Biểu thức số đo trạng thái ngược k(m) [Phụ lục]

Thay vì tính tất cả  thuận theo thời tính ngược gian, 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.

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) 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:

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 trong trường hợp L=1 và M=2 là:

3(01) = 4,0(00) 3,1(01) = 3,1(01)

Trình bầy k,i(m) trên lưới

135

Nguyễn Viết Đảm

Back

Summary of the MAP algorithm Cơ sở kỹ thuật TTVT Logarit hàm khả giống LLR cho từng dk

Số đo nhánh k,i(m)

k,i(m)

A - Priori Channel Values

Note: The MAP algorithm is very sensitive to correlation between consecutive symbols because expressions k(m), k,i(m), k(m) are derived under the hypothesis that the input symbols are totally decorrelated [7].

k(m)

k(m)

Số đo trạng thái thuận k(m)

Số đo trạng thái ngược k(m)

Hồi quy ngược được khởi đầu (buộc trạng thái cuối cùng trở về 0):

initial conditions

1(m=0) = 1 và 1(m≠0) = 0

L+M+1(m=0) = 1 và L+M+1(m≠0) = 0

136

Tất cả các k(m) được tính trong điều kiện được khởi đầu đúng:

Initial conditions Nguyễn Viết Đảm

Back

Summary of the MAP algorithm Cơ sở kỹ thuật TTVT

137

Nguyễn Viết Đảm

Back

Summary of the MAP algorithm Cơ sở kỹ thuật TTVT

138

Nguyễn Viết Đảm

Final Remarks Cơ sở kỹ thuật TTVT  The turbo-principle is more general than merely its application to the decoding of turbo

codes.

 The “Turbo Principle” can be described as:

 “Never discard information prematurely that may be useful in making a decision until

all decisions related to that information have been completed.” Andrew Viterbi

 “It is a capital mistake to theorize before you have all the evidence. It biases the

judgment” Sir Arthur Conan Doyle

 The key component on the decoding side is the SISO module which is a general decoding

block (SoftInput SoftOutput)

 Can be used to improve the interface in systems that employ multiple trellis-based algorithms  Turbo Decoding is similar to ICA, because it tries to separate signals (Noise and Useful

Transmitted Signal)

 Only one data stream is received: redundancy is introduced in the transmitter, in a

controlled manner, to allow signal separation at the receiver

 Extension to multiple data streams is possible  Some channel models, specially multipath channels, can be regarded as a form of Source

Encoder which leads to: ➔ Turbo Channel Equalization

 EXIT charts are powerful tools to analyze convergenve of “Turbo Codes”  Many open topics, for example:

 Turbo Decoding and ICA together in a mixed approach  Turbo Decoding and EM algorithms  Turbo Channel Equalization and ICA/EM, and many more...

139

Nguyễn Viết Đảm

Some Literature References... Cơ sở kỹ thuật TTVT [1] Bernard Sklar, “A Primer On Turbo Code Concepts”, in IEEE Communications Magazine, December

1997

[2] Benedetto, Divsalar, Montorsi, Pollara, “A SoftInput SoftOutput Maximum A Posteriori (MAP) Module

to Decode Parallel and Serial Concatenated Codes”, TDA Progress Report, November 1996

[3] Joachim Hagenauer, Peter Hoeher, “A Viterbi Algorithm with Soft-Decision Outputs and its

Applications”, IEEE, 1989

[4] Stephan ten Brink, “Convergence Behavior of Iteratively Decoded Parallel Concatenated Codes”, IEEE

Transactions on Communications, October 2001

[5] Claude Berrou, Alain Glavieux, Punya Thitimajshima, “Near Shannon Limit Error Correcting Coding

and Decoding: TurboCodes”, IEEE 1993

Bahl, Cocke, Jelinek, Raviv, “Optimal Decoding of Linear Codes for Minimizing Symbol Error Rate”,

IEEE Transactions on Information Theory, March 1974

[6] M. Tüchler, Joachim Hagenauer, “EXIT charts of irregular codes”, Conference on Information Sciences

and Systems, Princeton University, March 2002

[7] Dayani Adionel Guimaraes, “Descodificacao de Codigo de Producto de Paridade Simples”, INATEL,

June 2002

[8] Volker Kühn, “Kanalcodierung II”, Universität Bremen [9] W. J. Gross, P. G. Gulak, “Simplified MAP algorithm suitable for implementation of turbo codes”,

Electronic Letters, August 1998, vol 34

[10] Joachim Hagenauer, Patrick Robertson, Lutz Papke, “Iterative (“Turbo”) Decoding of Systematic

Convolutional Codes with the MAP and SOVA algorithms”, ITG Conference, October 1994

[11] Joachim Hagenauer, Elke Offer, Lutz Papke, “Iterative Decoding of Binary Block and Convolutional

Codes”, IEEE Transactions on Information Theory, March 1996

[12] Patrick Robertson, Emmanuelle Villebrun, Peter Hoeher, “A Comparison of Optimal and SubOptimal

MAP Decoding Algorithms Operating in the Log Domain”, IEEE 1995

140

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Diễn giải mã hóa/giải mã -mã xoắn và mã turbo

 System Modeling  Endcoder: Characteristic and properies  Decoder:  ML and MAP Algorithms

141

Nguyễn Viết Đảm

Sơ đồ khối hệ thống truyền thông cơ bản với mã xoắn Cơ sở kỹ thuật TTVT

2

1

Modulator

Information source

Rate k/n Conv. encoder

Nguyên tắc giải mã ML: Chọn đường dẫn có khoảng cách Hamming cực tiểu so với chuỗi thu.

C h a n n e l

4

3

Demodulator

Information sink

Rate k/n Conv. decoder

142

Nguyễn Viết Đảm

Sơ đồ khối hệ thống truyền thông cơ bản với mã Turbo Cơ sở kỹ thuật TTVT

2

1

Modulator

Information source

Turbo Encoder (PCCC-RSC)

Why do you study ?

C h a n n e l

3

4

Information sink

Turbo Decoder (MAP-SISO)

Demodulator (Soft Output)

143

Nguyễn Viết Đảm

Lập mã xoắn Cơ sở kỹ thuật TTVT

 Biểu đồ trạng thái

 Trạng thái được trình bày bởi nội dung của bộ nhớ.  Tồn tại 2(K-1)k trạng thái.  Biểu đồ trạng thái thể hiện:

 Toàn bộ các trạng thái có thể có;  Mọi chuyển dịch giữa các trạng thái;  Mối quan hệ vào/ra của bộ lập mã.

 Biểu đồ lưới:

Là sự mở rộng của biểu đồ trạng thái với mục đích thể hiện tường minh nguyên lý hoạt động bộ lập mã theo thời gian.

144

Nguyễn Viết Đảm

Đa thức tạo mã, sơ đồ tạo mã, biểu đồ trạng thái, biểu đồ lưới Cơ sở kỹ thuật TTVT

0/00

Đầu ra

vào

0/11

00

1/11

Trạng thái

0/00

1/00

1/11

10

01

0/11

0/10

1/00

0/10

1/01

1/01

0/01

11

0/01

1/10

1/10

Thời gian

145

Nguyễn Viết Đảm

Đa thức tạo mã, sơ đồ tạo mã, biểu đồ trạng thái, biểu đồ lưới Cơ sở kỹ thuật TTVT

Tail bits

Input bits

1

0

0

0

11 00

10 00

11 00

1 Output bits 00 00

10 00

11

11

11

11

11

11

00

10

10

10

01

01

01

01

10

146

Nguyễn Viết Đảm

Ma trận tạo mã, sơ đồ tạo mã, biểu đồ lưới của mã Turbo Cơ sở kỹ thuật TTVT

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

Mã RSC

Trạng thái D0,kD1,k

Trạng thái D0,k+1D1,k+1 00

Nhánh Ck=(dk,ck)

11

11

00

10

01

Thời gian

147

01 10

Nguyễn Viết Đảm

Đặc điểm lưới của mã Turbo/Trạng thái đầy đủ và bit đuôi Cơ sở kỹ thuật TTVT

Tail bits=M

0 1 1 1 0

00 00 00 00 00 S0=00

11 11 11

11 11 11 S1=10 00

10 10 10 S2=01

01

01

01

01

k=3

k=4

k=6

k=1

k=2

k=5

10 S3=11

148

00 11 10 11 00

Nguyễn Viết Đảm

Đặc điểm lưới của mã Turbo/Trạng thái đầy đủ và bit đuôi Cơ sở kỹ thuật TTVT

S0=00 00 00 00 00 00 00 S0=00 11 11 11 11

11

11

11 11 S1=10 S1=10 00 00

10 10 10 10 S2=01 S2=01 01 01 01

01

01 01 10

10

S3=11

k=N+1

k=3

k=N

k=1

k=2

k=4

k=N-M

k=L

Formard State Metrics

S3=11

Tail bits=M

Reverse State Metrics

0 1 1 0 1 00 00 00 00 00 S0=00

11 11 11

11

11

11

S1=10 00

10 10 10

S2=01

01 01

k=3

k=4

k=6

k=1

k=2

k=5

01 01 10 S3=11

149

11 01 01 11 10

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Minh họa giải thuật giải mã Turbo: MAP/SISO

150

Nguyễn Viết Đảm

Summary of the state Metrics and Branch metrics Cơ sở kỹ thuật TTVT

k,i(m)

Formard State Metrics

Reverse State Metrics

b) Số đo trạng thái ngược:

a) Số đo trạng thái thuận:

Giải thuật MAP: Nhân (cộng trong miền logarit) số đo trạng thái với số đo nhánh. Sau đó, thay vì so sánh chúng với nhau là cộng chúng để tạo thành số đo trạng thái thuận (hoặc ngược) tiếp theo.

Số đo nhánh:

bj(m) là trạng thái đi lùi về phía trước tương ứng với đầu vào j

f(j,m) là trạng thái tiếp theo đã cho trước đầu vào j và trạng thái m

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

151

Nguyễn Viết Đảm

Minh họa giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

Channel

k=4 k=1 k=2 k=3

00

0,25 0,05 0,27 S0=00

11 =3,75 =1,0 =1,0 =3,75 =0,05 =0,07 =0,01 =0,27

00 S1=10

=0,11 =0

11

=0 =5,56 =5,0 =0,75 =0,05 =0

01

S2=01 10

=1,25 =3,0 =15,01 =0 =0 =0,1 =0 =0,77

01

=0,45 =0

S3=11 =0 =1,14 10 1,0 0,67 0,08

152

=0 =1,11 =5,0 =0

Nguyễn Viết Đảm

Giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

Channel: I/O (input of Modulator/Ouput of Demodultor)

Nhánh Ck=(dk,ck)

Nhánh Rk=(xk,yk)

00

00

S0=m=a=00

11

11

11

11

Channel: I/O

00

S1=m=b=10

00

10

10

01

01

S2=m=c=01

01

01

10

10

S3=m=c=11

Giải mã MAP dựa vào lưới:  Tính các số đo (nhánh, trạng thái thuận, trạng thái

ngược) và biểu diễn trên lưới.

 Tính LLR của dk và quyết định cứng.

153

Nguyễn Viết Đảm

Minh họa giải mã Turbo/MAP: Tính số đo nhánh Cơ sở kỹ thuật TTVT

Tính số đo nhánh và biểu diễn trên lưới giải mã

Nhánh Rk=(xk,yk)

0,05 00 00

S0=m=a=00

11 11

00 00

S1=m=b=10

11

11

01

01

Tính số đo nhánh

10 10

S2=m=c=01

01 01 1.0

10 10

S3=m=c=11 Tồn tại 4 cặp có cùng giá trị Ck=(dk,ck)  (ak,bk)

Tại k=1, R1 = [x1,y1]= (1,5; 0,8)

154

Nguyễn Viết Đảm

Minh họa giải mã Turbo/MAP: Tính số đo nhánh Cơ sở kỹ thuật TTVT

Tại k=1, R1 = [x1,y1]= (1,5; 0,8)

0,05 00

11

00

11

01

10

01 1.0

10

k=2 k=3 k=4 k=1 00 0,25 0,05 0,27 S0=00

11

00 S1=10

11

01

S2=01 10

01

155

S3=11 10 1,0 0,67 0,08

Nguyễn Viết Đảm

Summary of the state Metrics and Branch metrics Cơ sở kỹ thuật TTVT

k,i(m)

Formard State Metrics

Reverse State Metrics

b) Số đo trạng thái ngược:

a) Số đo trạng thái thuận:

Giải thuật MAP: Nhân (cộng trong miền logarit) số đo trạng thái với số đo nhánh. Sau đó, thay vì so sánh chúng với nhau là cộng chúng để tạo thành số đo trạng thái thuận (hoặc ngược) tiếp theo.

Số đo nhánh:

bj(m) là trạng thái đi lùi về phía trước tương ứng với đầu vào j

f(j,m) là trạng thái tiếp theo đã cho trước đầu vào j và trạng thái m

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

156

Nguyễn Viết Đảm

Minh họa giải mã Turbo/MAP: Tính số đo trạng thái thuận Cơ sở kỹ thuật TTVT k=4

Formard State Metrics 0,25

=3,75

=0,05 =0,05

k=3 k=2 k=1 00 0,05 0,27 S0=00 =1,0 11 =0,01

=5 .0 =5,0

00 S1=10

=0,05

=0,11 =0 11

01

S2=01 10

=0 =0 =15,01 =1,25 =0

01

S3=11

10

1,0 0,67 0,08 =0 =0 =0 =5,0

157

=0,45 bj(m) là trạng thái đi lùi về trước phía tương ứng với đầu vào j

Nguyễn Viết Đảm

Minh họa giải mã Turbo/MAP: Tính số đo trạng thái ngược Cơ sở kỹ thuật TTVT

f(j,m) là trạng thái tiếp theo đã cho trước đầu vào j và trạng thái m

k=3 k=4 k=2 k=1 00 0,25 0,05 Reverse State Metrics 0,27 S0=00

11 =1,0 =3,75 =0,07

C =0,27

00 S1=10

=0 =5,56 =0,75 11 =0

01

S2=01 10

=0,77

=3,0 =0 =0,1

01

158

S3=11 10 1,0 0,67 0,08 =0 =1,11 =0 =1,14

Nguyễn Viết Đảm

Tính số đo trạng thái thuận/ngược và biểu diễn trên lưới giải mã Cơ sở kỹ thuật TTVT

=1,0

Reverse State Metrics k=3 k=1 00 k=2 k=4 0,25 Formard State Metrics 0,05 0,27 S0=00

11 =0,27 =3,75 =1,0 =0,05 =0,05 =0,07 =0,07

00 S1=10

=0,11 =0

=0 11 =0 =5,56 =5,0 =0,75

01

S2=01 10 =0

=1,25 =3,0 =15,01 =0 =0 =0,1

01

S3=11 10 1,0 0,67 0,08

=0 =1,11

=5,0 =0

bj(m) là trạng thái đi lùi về phía trước tương ứng với đầu vào j

f(j,m) là trạng thái tiếp theo đã cho trước đầu vào j và trạng thái m

159

=0,45 =0 =0 =1,14

Nguyễn Viết Đảm

Minh họa giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

k=3 k=1 00 k=2 k=4 0,25 0,05 0,27 S0=00

11

=3,75 =1,0 =1,0 =3,75 =0,05 =0,07 =0,01 =0,27

00 S1=10

=0 =5,56

=0,11 =0 11 =5,0 =0,75 =0,05 =0

01

S2=01 10

=15,01 =0

=1,25 =3,0 =0 =0,1 =0 =0,77

01

1,0

0,67

0,08

S3=11 =0,45 =0 =0 =1,14 10

160

=0 =1,11 =5,0 =0

Nguyễn Viết Đảm

Minh họa giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

k=3

k=1

00

k=2

k=4

0,25 0,05 0,27 S0=00

11 =3,75 =1,0 =1,0 =3,75 =0,05 =0,07 =0,01 =0,27

00 S1=10

=0,11 =0

11

=0 =5,56 =5,0 =0,75 =0,05 =0

01

S2=01

10

=1,25 =3,0 =15,01 =0 =0 =0,1 =0 =0,77

01

S3=11 =0,45 =0 10 1,0 0,67 0,08 =0 =1,14

161

=0 =1,11 =5,0 =0

Nguyễn Viết Đảm

Minh họa giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

k=3 k=1 00 k=2 k=4 0,25 0,05 0,27 S0=00

=0,01 =0,27

=1,0 =3,75

=0,05 =0,07

11 =3,75 =1,0

00 S1=10

=0,11 =0 11 =0 =5,56 =5,0 =0,75 =0,05 =0

01

S2=01 10

=15,01 =0

=1,25 =3,0 =0 =0,1 =0 =0,77

01

S3=11

10

1,0 0,67 0,08

162

=0,45 =0 =0 =1,11 =5,0 =0 =0 =1,14

Nguyễn Viết Đảm

Minh họa giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

0,05

k=3 k=1 00 k=2 k=4 0,25 0,27 S0=00

11 =3,75 =1,0 =0,01 =0,27 =1,0 =3,75 =0,05 =0,07

00 S1=10

=0,05 =0

=0,11 =0 11 =0 =5,56 =5,0 =0,75

01

S2=01

10

=1,25 =3,0 =15,01 =0 =0 =0,1 =0 =0,77

01

S3=11 10 1,0 0,67 0,08

163

=0,45 =0 =0 =1,11 =5,0 =0 =0 =1,14

Nguyễn Viết Đảm

Minh họa giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

Channel

k=2 k=3 k=4 k=1

00

0,25 0,05 0,27 S0=00

11 =3,75 =1,0 =0,05 =0,07 =0,01 =0,27 =1,0 =3,75

00 S1=10

=0,11 =0

11

=0 =5,56 =5,0 =0,75 =0,05 =0

01

S2=01 10

=1,25 =3,0 =15,01 =0 =0 =0,1 =0 =0,77

01

=0,45 =0

S3=11 10 1,0 0,67 0,08

=0 =1,14

164

=0 =1,11 =5,0 =0

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Mô hình hóa và mô phỏng hiệu năng mã xoắn cho hệ thống BPSK trong môi trường kênh AWGN

165

Nguyễn Viết Đảm

Mô phỏng BER hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT

Mục đích

Xây dựng mô hình (mô hình hóa) hệ thống truyền dẫn tín hiệu BPSK trong môi trường kênh AWGN. Mô phỏng hiệu năng BER đối với tín hiệu nhị phân đối cực và trực giao trong môi trường kênh AWGN.

 Nội dung:

 Tóm tắt lý thuyết: Hiểu mô hình toán  Vẽ mô hình mô phỏng.  Đọc mã chương trình mô phỏng: NVD_D12VT_BER_BPSK_AWGN  Xác định các tham số đầu vào của chương trình mô phỏng.  Thực hiện mô phỏng theo từng bước và thay đổi giá trị các tham số đầu vào

chương trình cho mỗi lần mô phỏng.

 Lưu các kết quả sau mỗi lần mô phỏng: ảnh hưởng của các tham số đầu vào lên

kết quả mô phỏng.

 Báo cáo kết quả:

 Vẽ lưu đồ thuật toán.tổng hợp, phân tích, đánh giá nhận xét kết quả mô phỏng.  Mô phỏng từng bước, xác định và thay đổi các tham số đầu vào chương trình,

phân tích ảnh hưởng của các tham số đầu vào lên kết quả mô phỏng.

166

Nguyễn Viết Đảm

Mô hình mô phỏng BER cho hệ thống BPSK trong kênh AWN Cơ sở kỹ thuật TTVT

Quyết

định và

giữa mẫu

Kênh AWGN

Bộ tương quan

Dao động nội phát TLO

Khôi phục sóng mang Khôi phục định thời Mô hình hóa mô phỏng BER cho hệ thống BPSK trong môi trường kênh AWGN Tạo biến NN Gausơ

Quyết

định

Tạo nguồn nhị phân

So sánh đếm lỗi

167

Nguyễn Viết Đảm

Mô phỏng BER cho hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT

Tạo biến NN Gausơ

Quyết

định

Tạo nguồn nhị phân

So sánh đếm lỗi

168

Nguyễn Viết Đảm

Mô phỏng BER hệ thống BPSK trong môi trường kênh AWGN Cơ sở kỹ thuật TTVT

SNRindB = 0:1:9; SNR = 10.^(SNRindB/10); Eb = 1; sgma = Eb./sqrt(2*SNR); Numbit = 10^5;

X= sgma(j)*randn(1)

% Generation of the binary data source and AWGN channel temp = rand; % Uniform radom variable over (0,1) if (temp<0.5), dsource(i)=1; % With probability 1/2 source output is 1 X = sgma(j)*randn(1) Y = - sqrt(Eb) + X; % 1 with enrery is –sqrt(Eb); AWGN else dsource(i)=0; % With probability 1/2 source output is 0 X = sgma(j)*randn(1) Y = Eb + X; % 0 with enrery is +sqrt(Eb); AWGN end

Tạo biến NN Gausơ

if (Y<0) decis = 1; else decis = 0; end;

Quyết

định

Tạo nguồn nhị phân

if (decis~=dsource(i)) numoferr = numoferr+1; end

So sánh đếm lỗi

smld_err_prb(j) = numoferr/Numbits;

temp = rand; if (temp<0.5), dsource(i)=1; else dsource(i)=0; end

169

Nguyễn Viết Đảm

SNRindB = 0:0.5:10; SNR = 10.^(SNRindB/10); Eb = 1; sgma = E./sqrt(2*SNR); NumBit = 10^7;

Cơ sở kỹ thuật TTVT Chương trình mô phỏng BER cho hệ thống BPSK trong môi trường kênh AWGN

for j=1:length(SNR)

 Vẽ

% Uniform radom variable over (0,1)

% With probability 1/2 source output is 1 % Generated Gaussian Random Variable % 1 with enrery is –sqrt(Eb); and pass AWGN channel

hóa trình

% With probability 1/2 source output is 0 % Generated Gaussian Random Variable % 0 with enrery is +sqrt(Eb); and pass AWGN channel

thuật lưu đồ toán, đặt lại tên các biến số.  Modul các theo chương mô hình mô phỏng. Tối ưu hóa chương trình.

% if it is an error, increase the error counter

 Sử dụng hàm tic, toc, clock, cputime kiểm tra thời gian chạy chương trình.  So sánh thời gian mô phỏng BER và thời gian tính toán BER.

% Theoretical error rate theo_Orthogonal_err_prb(j) = 0.5 *erfc(sqrt(SNR(j)/2)); theo_Antipodal_err_prb(j) = 0.5 *erfc(sqrt(SNR(j))); % Simulated error rate numoferr = 0; for i=1:NumBits % Generation of the binary data source and Pass AWGN channel temp = rand; if (temp<0.5), dsource(i)=1; X= sgma(j)*randn(1); Y = -sqrt(Eb) + X ; else dsource(i)=0; X= sgma(j)*randn(1); Y = sqrt(Eb) +X; end % detector follows/Decission if (Y<0) decis(i) = 1; % Decission is ‘1' else decis(i) = 0; % Decission is ‘0' end; % Comparision for determine error and conter error if (decis(i)~=dsource(i)) numoferr = numoferr+1; end; end; % numoferr= sum(decis~=dsource); smld_err_prb(j) = numoferr/NumBits; % Probability of error estimate;

170

end

Nguyễn Viết Đảm

Mô phỏng BER cho hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT

 Kịch bản mô phỏng SNR = [0:1:7]; % xét cho nhiều giá trị của SNR  kênh AWGN NumBits = 10^6; % Thực hiện trên nhiều vòng lặp  lấy mẫu kênh, số

bits được mô phỏng

 Kết quả mô phỏng

SNR (dB)

0

1

2

3

4

5

6

7

Biến NN gausian X

Số lỗi

BER

Xác định các tín hiệu trong mô hình, chương trình mô phỏng và ghi kết quả

Phía phát và kênh AWGN

Phía thu

Đầu ra của tạo nguồn nhị phân

Đầu ra kênh AWGN

Vào/ra quyết định

BER

171

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Tính toán khảo sát, mô tả BER hệ thống BPSK trong kênh AWGN

function Q = Qfunct(u)

Q = 0.5 *erfc(u/sqrt(2));

Matlab hóa

NVD_D12VT_BER_BPSK_AWGN

= 0:1:10; % E/N0 = 10.^(SNRindB/10);

SNRindB SNR

theo_Orthogonal_err_prb(i) = Qfunct(sqrt(SNR(i))); % = 0.5 *erfc(sqrt(SNR(j)/2)); theo_Antipodal_err_prb(i) = Qfunct(sqrt(2*SNR(i))); % = 0.5 *erfc(sqrt(SNR(j)));

for i=1:length(SNR) end

 Kết quả mô tả

SNR (dB)

0

1

2

3

4

5

6

7

BER của trực giao

BER của đối cực

 Sử dụng các hàm display () và disp () để hiển thị kết quả ra mần hình, tính toan tra bảng hàm Q(x) để so sánh

172

 Vẽ so sánh xác xuât lỗi trên cùng một hình

Nguyễn Viết Đảm

Mô phỏng và khảo sát BER hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT

Biễu diễn kết tính toán BER bởi hàm Q() tại SNR = 0 dB; 2 dB….. bằng đồ thị và hàm display: Giải thích, phân tích kết quả tính toán.

Biễu diễn kết quả mô phỏng BER tại SNR = 0 dB; 2 dB….. bằng đồ thị và hàm display: Giải thích, phân tích kết quả mô phỏng.

Tại mỗi giá trị SNR của kênh AWGN thực hiện mô phỏng 106 bits

theo_Orthogonal_err_prb(i) = Qfunct(sqrt(SNR(i))); theo_Antipodal_err_prb(i) = Qfunct(sqrt(2*SNR(i)));

173

Nguyễn Viết Đảm

Mô phỏng và khảo sát BER hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT function y = NVD_D12VT_BPSK_AWGN_modul

 Vẽ

hóa trình

thuật lưu đồ toán, đặt lại tên các biến số.  Modul các theo chương mô hình mô phỏng. Tối ưu hóa chương trình.

 Sử dụng hàm tic, toc, clock, cputime kiểm tra thời gian chạy chương trình.  So sánh thời gian mô phỏng BER và thời gian tính toán BER.

SNRindB = 0:1:12; SNR = 10.^(SNRindB/10); Eb = 1; sgma = Eb./sqrt(2*SNR); NumBits = 10^7;

174

% Theoretical error rate theo_Antipodal_err_prb = 0.5 *erfc(sqrt(SNR)); % Simulated error rate for j=1:length(SNR) % Generation of the binary data Block dsource = 0.5*(sign(rand(1,NumBits)-0.5)+1); for i = 1:length(dsource) % Pass AWGN channel if dsource(i)==1, X = sgma(j)*randn(1); Y = -sqrt(Eb) + X; else X = sgma(j)*randn(1); Y = sqrt(Eb) + X; end % detector follows/Decission if (Y<0) decis(i) = 1; % Decission is '1' else decis(i) = 0; % Decission is '0' end; end; smld_err_prb(j) = sum(decis~=dsource)/NumBits; end

Nguyễn Viết Đảm

Mô phỏng và khảo sát BER hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT

Biễu diễn kết tính toán BER bởi hàm Q() tại SNR = 0 dB; 2 dB….. bằng đồ thị và hàm display: Giải thích, phân tích kết quả tính toán.

Biễu diễn kết quả mô phỏng BER tại SNR = 0 dB; 2 dB….. bằng đồ thị và hàm display: Giải thích, phân tích kết quả mô phỏng.

175

Nguyễn Viết Đảm

Báo cáo và kiểm tra Cơ sở kỹ thuật TTVT

NVD_D12VT_BER_BPSK_AWGN

Câu 1: Trình bày tóm tắt quá trình điều chế/giải điều chế BPSK trên cơ sở không gian

tín hiệu (phân tích công thức PSD và xác suất lỗi).

Câu 2: Phân tích mô hình mô phỏng; xác định và phân tích các đoạn mã chương trình

Matlab thực hiện các khối chức năng của mô hình mô phỏng.

Câu 3: Xác định và phân tích tín hiệu vào/ra của các khối trong mô hình mô phỏng trên chương trình Matlab theo các tham số đầu vào và giải thích kết quả (theo các bảng kết quả mô tả và mô phỏng).

Câu 4: Xác định các đoạn chương trình Matlab thực hiện các khối chức năng cho mô hình mô phỏng như: đoạn chương trình tạo chuỗi nhị phân (quá trình tạo chuỗi nhị phân); đoạn chương trình thực hiện quyết định; đoạn chương trình so sánh đếm lỗi; đoạn chương trình tạo biến ngẫu nhiên phân bố Gausian…..  Ghi và phân tích các tín hiệu vào/ra của mô hình mô phỏng theo chương trình

Matlab như: xác định đầu vào/ra kênh AWGN.

 Biễu diễn kết quả mô phỏng BER tại: SNR = 0 dB; 2 dB….. bằng đồ thị và

hàm display(): Giải thích, phân tích kết quả mô phỏng.

 Biễu diễn kết tính toán BER bởi hàm Q()tại: SNR = 0 dB; 2 dB….. bằng đồ thị

và hàm display: Giải thích, phân tích kết quả tính toán.

176

Nguyễn Viết Đảm

Mô phỏng BER hệ thống BPSK sử dụng mã xoắn trong môi Cơ sở kỹ thuật TTVT trường kênh AWGN

Mục đích

Mô hình hóa và mô phỏng BER hệ thống truyền dẫn tín hiệu BPSK cùng với mã hóa/giải mã xoắn trong môi trường kênh AWGN

 Nội dung:

 Tóm tắt lý thuyết: Hiểu quá trình mã hóa/giải mã xoắn trên cơ sở biểu đồ lưới; giải thuật giải

mã ML và Viterbi.

 Phân tích mô hình mô phỏng.  Đọc mã chương trình mô phỏng: NVD_D12VT_COV_Encoder_Decoder;

NVD_COV_Encoder; NVD_COV_Dencoder; NVD_D12VT_BPSK_AWGN_ChannelCode.

 Xác định và phân tích các tham số đầu vào của chương trình mô phỏng.  Xác định và phân tích các đoạn mã chương trình Matlab thực hiện các khối chức năng của môi hình mô phỏng; xác định và phân tích tín hiệu vào/ra của các khối trong mô hình mô phỏng trên chương trình Matlab.

 Thực hiện mô phỏng theo từng bước, thay đổi giá trị các tham số đầu vào chương trình cho mỗi lần mô phỏng và lưu các kết quả sau mỗi lần mô phỏng: ảnh hưởng của các tham số đầu vào lên kết quả mô phỏng.

 Báo cáo:

 Phân tích mô hình mô phỏng và vẽ lưu đồ mô phỏng.  Biểu diễn và phân tích phân tích ảnh hưởng của các tham số đầu vào lên kết quả mô phỏng.  Tổng hợp, phân tích, đánh giá nhận xét các kết quả mô phỏng

177

Nguyễn Viết Đảm

Sơ đồ khối hệ thống truyền thông số cơ bản với mã hóa/giải mã xoắn Cơ sở kỹ thuật TTVT

1

2

Modulator

Information source

Rate k/n Conv. encoder

Nguyên tắc giải mã ML: Chọn đường dẫn có khoảng cách Hamming cực tiểu so với chuỗi thu.

C h a n n e l

4

3

Demodulator

Information sink

Rate k/n Conv. decoder

178

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Sơ đồ khối hệ thống truyền thông số cơ bản với mã hóa/giải mã xoắn

1

2

Modulator

Information source

Rate k/n Conv. encoder

N N n ế i

Tạo Vectơ lỗi

b o ạ T

ơ s u a G ố b n â h p

I p ợ h g n ờ ư r T

I I p ợ h g n ờ ư r T

4

3

Demodulator

Information sink

Rate k/n Conv. decoder

Trường hợp I:

Mô hình hóa và mô phỏng quá trình mã hóa và giải mã xoắn

Trường hợp II: Mô hình hóa và mô phỏng hiệu năng của mã xoắn cho hệ thống

BPSK trong môi trường kênh AWGN.

179

Nguyễn Viết Đảm

Mô hình mô phỏng BER hệ thống BPSK sử dụng mã xoắn trong môi Cơ sở kỹ thuật TTVT trường kênh AWGN

Quyết

định

Kênh AWGN

3

2

Bộ tương quan

Khôi phục sóng mang

Dao động nội phát TLO

Khôi phục định thời

1

2

4

Tạo biến ngấu nhiên phân bố Gasian

1

Mô hình hóa mô phỏng BER cho hệ thống BPSK sử dụng mã xoắn trong môi trường kênh AWGN 3

4

3

2

Giải mã

Mã hóa

xoắn

Chuyển mức

Quyết định

xoắn

Tạo nguồn nhị phân

Viterbi

So sánh đếm lỗi

180

Nguyễn Viết Đảm

Mô hình mô phỏng BER hệ thống BPSK sử dụng mã xoắn trong Cơ sở kỹ thuật TTVT môi trường kênh AWGN

Tạo biến ngấu nhiên phân bố Gasian

1

4

2

3

Giải mã

Mã hóa

xoắn

Chuyển mức

Quyết định

xoắn

Tạo nguồn nhị phân

Viterbi

So sánh đếm lỗi

1 3

4

2

181

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Mô hình hóa và mô phỏng BER hệ thống BPSK sử dụng mã xoắn trong kênh AWGN

Tạo biến ngấu nhiên phân bố Gasian

1

4

Giải mã

Mã hóa

xoắn

Chuyển mức

Quyết định

xoắn

Tạo nguồn nhị phân

Viterbi

2

3

1 3

2 4

So sánh đếm lỗi Mô hình hóa quá trình mã hóa/giải mã xoắn Tạo Vectơ lỗi

2

3 Giải mã

Mã hóa

1

4

xoắn

xoắn

Tạo nguồn nhị phân

Viterbi

182

So sánh đếm lỗi Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Mô hình hóa và mô phỏng quá trình mã hóa/giải mã xoắn

Tạo vectơ lỗi

Giải mã

Mã hóa

1

4

2

3

xoắn

xoắn

Tạo nguồn nhị phân

Viterbi

So sánh lỗi

1

3

183

2 4

Nguyễn Viết Đảm

Minh họa quá trình mã hóa/giải mã xoắn trên chương trình Matlab Cơ sở kỹ thuật TTVT

Input bits

Tail bits

1 0 0 0

1 Output bits

00 11 10

11 00 10 00

00

00

00

11

11

11

11

11

11

00

10

10

10

01

01

01

01

10

Lỗi phân tán

184

Nguyễn Viết Đảm

Minh họa quá trình mã hóa/giải mã xoắn trên chương trình Matlab Cơ sở kỹ thuật TTVT

Tail bits

Input bits

1 0 0 0

1 Output bits

00 11 10

11 00 10 00

00

00

00

11

11

11

11

11

11

00

10

10

10

01

01

01

01

10

185

Nguyễn Viết Đảm

Minh họa quá trình mã hóa/giải mã xoắn trên chương trình Matlab Cơ sở kỹ thuật TTVT

Input bits

Tail bits

1

0

0

0

11 00

10 00

1 Output bits 00 00

11 00

10 00

11

11

11

0/11

11

11

1/00

10

10

10

01

01

01

01

10

186

Lỗi phân tán

Nguyễn Viết Đảm

Minh họa quá trình mã hóa/giải mã xoắn trên chương trình Matlab Cơ sở kỹ thuật TTVT

Lỗi cụm, phađinh sâu

00

00

00

00

00

11

11

11

11

11

11

00

10

10

10

01

01

01

01

10

187

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Chương trình mô phỏng quá trình mã hóa xoắn/giải mã

xoắn Viterbi quyết định cứng

NVD_D12VT_COV_Encoder_Decoder

Nhập các giá trị tham số đầu vào chương trình mô phỏng theo các ví dụ và bài tập

Nhập tham số đầu vào cho chương trình

= []; % nhập k bit vào đồng thời = []; % Nhập ma trận tạo mã = []; % Nhập khối bản tin

k0 G Iput error_vector= []; % Nhập vectơ lỗi

%% Eencoder ====================

Encoder_output

= NVD_COV_Encoder(G,k0,iput);

%% Pass channel ====================

channel_out

= xor(Encoder_output,error_vector);

%% De_encoder ===================

decoder_output

= NVD_COV_Dencoder(G,k0,channel_out);

188

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Mô hình mô phỏng BER hệ thống BPSK sử dụng mã xoắn trong

môi trường kênh AWGN

Tạo biến ngấu nhiên phân bố Gasian

1

4

2

3

Giải mã

Mã hóa

xoắn

Chuyển mức

Quyết định

xoắn

Tạo nguồn nhị phân

Viterbi

So sánh đếm lỗi

3 1

4

189

2

Nguyễn Viết Đảm

= 0:1:8; = 10.^(SNRindB/10); = 1; = Eb./sqrt(2*SNR);

SNRindB SNR Eb sgma Block_size = 1000; = 200; Num_Block = Num_Block*Block_size; NumBits mode = 1; % if mode ==2 k0 = 1; % G = [1 1 1 1 0 0 1;1 0 1 1 0 1 0]; G = [1 1 1;1 0 1]; end % Calculation for error Probability theo_Antipodal_err_prb = 0.5 *erfc(sqrt(SNR));

NVD_D12VT_BPSK_AWGN_ChannelCode

Chương trình mô phỏng BER hệ thống BPSK dùng mã xoắn Cơ sở kỹ thuật TTVT for j=1:length(SNR) trong môi trường kênh AWGN numoferr_tot = 0; for k=1:Num_Block dsource_1 = 0.5*(sign(rand(1,Block_size)-0.5)+1); if mode ==2 dsource = NVD_COV_Encoder(G,k0,dsource_1); else dsource = dsource_1; end numoferr_block = 0; for i = 1:length(dsource) % Pass AWGN channel if dsource(i)==1, X = sgma(j)*randn(1); Y = -sqrt(Eb) + X; else X = sgma(j)*randn(1); Y = sqrt(Eb) + X; end % detector follows/Decission if (Y<0) decis(i) = 1; % Decission is '1' else decis(i) = 0; % Decission is '0' end; end; % Block_size if mode==2 decoder_output = NVD_COV_Dencoder(G,k0,decis); else decoder_output = decis; end numoferr_tot=sum(decoder_output~=dsource_1) + numoferr_tot; end; smld_err_prb(j) = numoferr_tot/NumBits; end

190

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Chương trình mô phỏng BER hệ thống BPSK dùng mã hóa xoắn

trong môi trường kênh AWGN

NVD_D12VT_BPSK_AWGN_ChannelCode

Lưu ý: Nhập các giá trị tham số đầu vào chương trình mô phỏng theo các ví dụ và bài tập

191

Nguyễn Viết Đảm

Mô phỏng BER hệ thống BPSK dùng mã hóa xoắn trong môi trường kênh AWGN Cơ sở kỹ thuật TTVT

G = [1 1 1;1 0 1];

192

Nguyễn Viết Đảm

G = [1 1 1 1 0 0 1;1 0 1 1 0 1 0];

193

Cơ sở kỹ thuật TTVT Mô phỏng BER hệ thống BPSK dùng mã hóa xoắn trong môi trường kênh AWGN

Nguyễn Viết Đảm

k0 = 2; r =k/n=2/3 G = [0 0 1 0 1 0 0 1;0 0 0 0 0 0 0 1;1 0 0 0 0 0 0 1];

194

Cơ sở kỹ thuật TTVT Mô phỏng BER hệ thống BPSK dùng mã hóa xoắn trong môi trường kênh AWGN

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Báo cáo và kiểm tra

Câu 1: Trình bày tóm tắt quá trình mã hóa xoán trên cơ sở biểu đồ

lưới.

Câu 2: Trình bày tóm tắt quá trình giải mã xoắn trên cơ sở giải thuật giải mã ML và Viterbi quyết định cứng (phân tích công thức giải mã ML và giải thuật giải mã Viterbi).

Câu 3: Phân tích mô hình mô phỏng; xác định và phân tích các đoạn mã chương trình Matlab thực hiện các khối chức năng của mô hình mô phỏng.

Câu 4: Xác định và phân tích tín hiệu vào/ra của các khối trong mô hình mô phỏng trên chương trình Matlab theo các tham số đầu vào và giải thích kết quả.

Câu 5: Biểu diễn (lấy tín hiệu và hiển thị), phân tích phân tích ảnh hưởng của các tham số đầu vào lên kết quả mô phỏng.

195

Lưu ý: Nhập các giá trị tham số mô phỏng theo các ví dụ và bài tập

Nguyễn Viết Đảm

Đặc điểm lưới của mã Turbo/Trạng thái đầy đủ và bit đuôi Cơ sở kỹ thuật TTVT

00

00

00

00

00

00

S0=00

11

11

11

11

11

11

11

11

S1=10

00

00

10

10

10

10

S2=01

01

01

01

01

01

01

10

10

S3=11

k=3

k=4

k=1

k=6

k=7

k=2

k=5

00

00

00

00

00

00

00

00

S0=00

11

11

11

11

11

11

11

11

11

11

11

11

S1=10

00

00

00

00

10

10

10

10

10

10

S2=01

01

01

01

01

01

01

01

01

01

01

10

10

10

10

S3=11

k=3

k=4

k=6

k=1

k=8

k=9

k=2

k=5

k=7

196

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT

Bài tập và kiểm trên Matlab

00

00

00

00

00

00

00

00

S0=00

11

11

11

11

11

11

11

11

11

11

11

11

S1=10

00

00

00

00

10

10

10

10

10

10

S2=01

01

01

01

01

01

01

01

01

01

01

10

10

10

10

S3=11

k=3

k=4

k=6

k=1

k=8

k=9

k=2

k=5

k=7

00

00

00

00

00

00

00

00

00

00

S0=00

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

S1=10

00

00

00

00

00

00

00

00

00

00

10

10

10

10

10

10

10

10

10

10

S2=01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

01

10

10

10

10

10

10

10

10

10

10

S3=11

k=3

k=4

k=6

k=1

k=8

k=9

k=11

k=2

k=5

k=7

k=10

197

Nguyễn Viết Đảm

Giải thuật giải mã Turbo: MAP Cơ sở kỹ thuật TTVT

k=2

k=3

k=4

k=1 00

0,05

0,25 0,27

S0=00

11 =1,0 =3,75 =0,05 =0,07 =0,01 =0,27 =3,7 5 =1,0

00

S1=10

=0,05 =0

=0,11 =0 11 =5,0 =0,75 =0 =5,5 6

01

10

S2=01

=0 =0,1

=1,25 =3,0 =0 =0,77 =15,0 1 =0

01

S3=11

10 1,0 0,67 0,08

198

=0,45 =0 =0 =1,11 =5,0 =0 =0 =1,14

Nguyễn Viết Đảm

199

Cơ sở kỹ thuật TTVT

Nguyễn Viết Đảm

Mô phỏng BER cho hệ thống BPSK trong kênh AWGN Cơ sở kỹ thuật TTVT

Tạo biến NN Gausơ

Quyết

định

Tạo nguồn nhị phân

So sánh đếm lỗi

200

Nguyễn Viết Đảm

201

Cơ sở kỹ thuật TTVT

Nguyễn Viết Đảm

Cơ sở kỹ thuật TTVT Matlab

2.8. Ảnh hưởng của đặc tính đường truyền (5/12)

Tạp âm Gausơ

Điện áp tạp âm Gauss và hàm mật độ xác suất

Hàm FX(x) cho biết xác suất điện áp tạp âm thấp hơn mức x

Hàm phân bố xác suất và mật độ xác suất của tạp âm Gauss

202

Nguyễn Viết Đảm