2 2 σ σ r e r − với r<0 P(r) = 0 với r≥0
Kênh truyền trong truyền thông không dây có mức nhiễu cao hơn ở môi trường truyền dây. Vì thế các mã kênh phải có đủ khả năng đương đầu với mức nhiễu lớn.
Đặc biệt nếu dùng trong công tác nghiên cứu vũ trụ thì mức nhiễu còn cao hơn nữa.
Để triệt fading thì còn có nhiều cách khác nhau ví dụ như trải phổ. Khi đã triệt
được một phần fading và sử dụng thêm mã TC nữa thì chất lượng đạt được sẽ rất cao.
Ngoài ra, môi trường truyền còn luôn luôn biến đổi. Ví dụ như một thuê bao
điện thoại di động có thể vừa đàm thoại vừa di chuyển, môi trường truyền xung quanh cũng biến đổi, thông số môi trường cũng thay đổi. Chính vì sự bất ổn định của kênh truyền mà việc tìm được một loại mã thích hợp là một việc rất khó khăn. Và đây chính là lĩnh vực ứng dụng chủ yếu của TC nhờ các đặc tính ưu việt.
3.3.1.2. Hạn chế về thời gian:
Cũng như các ứng dụng thời gian thực khác, truyền thông không dây cũng có những yêu cầu về thời gian rất khắt khe. Nhất là các thông tin thoại yêu cầu phải
đáp ứng nhanh. Thông tin thoại mà đáp ứng chậm sẽ trở nên vô giá trị.
3.3.1.3. Kích thước khung nhỏ:
Trong truyền thông không dây thì kích thước khung truyền không được lớn vì: * Kênh truyền không tin cậy, nếu truyền khung lớn thì tỉ lệ lỗi trong khung sẽ
cao hơn. Nếu khung bị mất hay không thể khôi phục thì dữ liệu tại đầu nhận sẽ bị
* Do đặc tính thời gian thực nên không chấp nhận độ trễ lớn khi truyền một khung có kích thước lớn.
Như vậy, với kích thước khung nhỏ thì không tận dụng được các đặc tính ưu việt của TC.
3.3.1.4. Băng thông giới hạn:
Truyền thông không dây chỉ sử dụng một khoảng phổ tần số đã được phân, mỗi công ty điện thoại di động lại chỉ được phân cho một khu vực trong khoảng này để
cung cấp dịch vụ cho khách hàng. Như vậy băng thông rất hạn chế có nghĩa là mô hình mã hóa phải có càng ít bit redundant càng tốt, tức là đòi hỏi tốc độ mã cao. Một sốứng dụng cụ thể của mã turbo sẽ dược xet đến trong phần sau.
3.4. Mã turbo ứng dụng trong thông tin vũ trụ
Thế hệ tiếp theo của các thiết bị thu phát của NASA sẽ có sử dụng mã turbo.
Ủy ban cố vấn về hệ thống dữ liệu vũ trụ (CCSDS) đã chọn mã turbo 16 trạng thái tỉ
lệ mã 1/2, 1/3, 1/4, 1/6 là chuẩn mới cho mã hóa kênh. Sơđồ khối bộ mã hóa được thể hiện trên hình 3.3 tỉ lệ mã 1/3 được thực hiện nhờ ghép nối song song 2 bộ mã RSC 16 trạng thái, tỉ lệ 1/2, trong đó bit thông tin hệ thống của bộ mã hõa thứ hai bị
loại đi. Ma trận sinh của bộ mã thành phần là G(D)= ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ) ( ) ( 1 D d D n Trong đó d(D) = 1+D3+D4 , n(D) = 1+D+D3+D4
Hình 3.3 Sơđồ bộ mã hóa dùng trong thông tin vũ trụ
Tỉ lệ mã 1/4 có được bằng cách kết hợp một bộ mã thành phần 16 trạng thái tỉ lệ 1/3 với 1 bộ mã 16 trạng thái tỉ lệ 1/2 đã được bỏđi bít thông tin hệ thống. Ma trận sinh của bộ mã thành phần có tỉ lệ 1/3 được cho bởi:
Bộ mã thành phần còn lại có giống như khi hệ thống cho ra tỉ lệ 1/3.
Hệ thống có thểđạt được tỉ lệ mã 1/6 khi kết hợp 2 bộ mã, 1 bộ mã có tỉ lệ 1/4 cos ma trận sinh :
Và 1 bộ mã thành phần có tỉ lệ 1/3 được loại đi bit thông tin hệ thống, với ma trận sinh :
3.5. Ứng dụng mã turbo trong CDMA 2000
Trong hệ thống CDMA 2000, mã turbo được đề nghị sử dụng cả ở kênh
đường lên và đường xuống. Sơđồ khối cho đường xuống được mô tả trên hình 3.4 sử dụng mã RSC thành phần là (3,1,4). Kích thước của bộ interleaver dùng trong hệ
thống CDMA2000 phải là 1 trong các giá trị sau : 378, 570, 762, 1146, 1530, 2398, 3066, 4602, 6138, 9210, 12282, hoặc 20730 bit.
Hình 3.4 Mã turbo cho đường xuống trong CDMA2000.
Ma trận sinh của mã thành phần được cho bởi công thức sau:
Bằng cách áp dụng kỹ thuật xóa đối với đầu ra bộ mã thành phần ta co thể có
được các tốc độ mã 1/2 , 1/3, 1/4. Tỉ lệ mã 1/4 có thể thu được khi ta dùng kĩ thuật xóa luân phiên đối với hai đầu ra v2’ và v2 . Tiếp tục áp dụng kĩ thuật xóa với hai
đầu ra v1’ và v1 ta sẽ có dược tỉ lệ mã 1/3. Để có được tỉ lệ 1/2 thì kĩ thuật xóa được áp dụng với cả v2’ , v2 , v1’ và v1 .
Mã turbo dùng cho đường lên được xây dựng trên cơ sở 2 mã RSC thành phần có ma trận sinh cho bởi công thức:
Để có được tốc độ 1/4 thì kĩ thuật xóa được áp dụng với bit v1 của bộ mã thành phần thứ nhất và v2’ của bộ mã thành phần thứ 2. Với tỉ lệ 1/3 thì cả hai thành phần v2’ và v2 của bộ mã thành phần bị trich bỏ. Tỉ lệ 1/2 của đường lên giống như với
đường xuống.
3.6 Ứng dụng mã turbo trong UMTS
Có 2 ứng cử cho hệ thống thông tin di động thế hệ thứ ba trên cơ sở của 3GPP (3rd Generation Partnership Project). Bao gồm 1 bộ mã turbo 8 trạng thái có tỉ lệ 1/3, 1/2 và 1 chuỗi liên kết mã xoắn 8 trạng thái có tỉ lệ 1/3.
Mã turbo 8 trạng thái được tạo ra bằng cách kết hợp song song 2 mã RSC có tỉ
lệ 1/2 với ma trận sinh:
Đầu ra của mã turbo được xư lý bằng kĩ thuật xóa đểđạt được tốc độ mã mong muốn là 1/3, hoặc 1/2 . Để có tỉ lệ mã 1/3 thì bít thông tin hệ thống của bộ mã thành phần thứ 2 được xóa. Để có tỉ lệ mã 1/2 thì bit parity của 2 bộ mã thành phần dược luân phiên xóa. Cấu trúc của bộ mã 8 trạng thái với tỉ lệ 1/3 được thể hiện trên hình 3.5. Kích thước khối dữ liệu đầu vào có thể trong khoảng từ 40 bit đến 5114 bit.
Hình 3.5 Mã turbo cho 3GPP
Cấu trúc bộ mã xoắn 4 trạng thái với tỉ lệ 1/3 được mô tả trên hình 3.6 mã bên trong là mã RSC có tỉ lệ 1/2 với ma trận sinh
Mã bên ngoài tỉ lệ 2/3 đạt được nhờ áp dụng kĩ thuật xóa với mã RSC có tỉ lệ
1/2 vowis cùng ma trận sinh như với mã bên trong. Tỉ lệ 2/3 đạt được bằng cách áp dụng kĩ thuật xóa với mỗi bít parity, ma trận xóa được cho bởi:
Chú ý là kết thúc trellis đạt được cả với mã turbo và chuỗi mã xoắn. với chuỗi mã xoắn, bit đuôi ( tailing bits) của bộ mã ngoài đã bao gồm trong bộ chèn
3.7. Ứng dụng trong thông tin thông tin vệ tinh
Mã turbo cũng được khuyên cáo dùng trong các dịch vụđa phương tiện mới của INMARSA. Tốc độ dữ liệu 64kbits/s được cung cấp trên cơ sở kết hợp mã turbo và
điều chế 16 QAM. Thêm vào đó, INTELSAT đang nghiên cứu các ứng dụng của mã turbo cho các dich vụ số.
Chương 4 Chương trình mô phỏng
Chương này trình bày mô phỏng mã Turbo PCCC với tốc độ 1/2 và 1/3 tuỳ
theo sự lựa chọn kỹ thuật xoá hay là không.Chạy chương trình với các thông sốđầu vào khác nhau để có những kết quả cuối cùng về tỉ lệ lỗi bit (BER) và tỉ lệ lỗi khung (FER),các kết quả này được đưa ra hình vẽđể có những nhận xét về mã PCCC .
4.1 Cấu trúc chương trình
Chương trình mô phỏng được viết bằng Matlab: gồm các file: 1.bo_ma_hoa.m 2.chuong_trinh_chinh.m 3.logmapo.m 4.ma_hoa.m 5.nhi_phan.m 6.rsc_ma_hoa.m 7.so_do_trellis.m 8.so_nguyen.m 9.sova.m 10.tach_kenh.m 11.Turbo.txt(lưu kết quả chạy chương trình) 12.Hinh_kq.m( kết quả ra hình) 4.2 Chương trình chính
Để chạy chương trình ta vào file :chuong_trinh_chinh.m để nhập các thông sốđầu vào,như:
+Chọn thuật toán: hàm Ttgiaima = 0 là ta chọn thuật toán Log-Map. hàm Ttgiaima = 1 là ta chọn thuật toán SOVA.
+Chọn kích thước khung bằng hàm L_f=? bao gồm thông tin và bit đuôi (info+tail).
+Chọn dùng kỷ thuật xoá hay là không: hàm kt_xoa = 0 là dùng kỹ thuật xoá hàm kt_xoa=1 là không dùng kỹ thuật xoá .
+Chọn số lần lặp của mỗi khung bằng hàm: lan_lap =?
+Nhập số khung bị lỗi để kết thúc chương trình bằng hàm: ket_thuc=? +Nhập giá trị Eb/N0 bằng hàm:EbN0db =?
Sau khi nhập các thông số xong ta cho chay chương trình như sau:
4.3 kết quả mô phỏng
Thực hiện chạy chương trình nhiều lần với các thông số đầu vào khác nhau,ta được kết quả như bảng. Lần 1 Lần 2 Lần 3 Lần 4 Lần 5 Lần 6 Lần 7 Thuật toán Log- Map Log- Map
SOVA SOVA Log-Map SOVA Log- Map Kích thước khung 300 300 300 300 500 1000 1000 Kỹ thuật xoá
Có Có Không Không Có Không Có
Số lần lặp mỗi khung 5 10 5 10 5 5 5 Số khung bị lỗi để kết thúc 10 10 10 10 5 3 3 Eb/No (dB) 2 2 3 2 3 3 3 Bảng 4.1 Thông số các lần chạy chương trình Và kết quả cuối cùng của các lần chạy chương trình như sau:
Lần1 ***************************** Eb/N0 = 2.00 db ***********************************
Kich thuoc khung = 300, rate 1/2. 132 Khung da trao doi , 10 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 5):
2.3337e-002 5.1098e-003 2.1100e-003 1.3219e-003 1.6270e-003 Ti le loi khung (Tu lan lap 1 cho den 5):
9.1667e-001 3.0303e-001 1.2879e-001 8.3333e-002 7.5758e-002 ************************************************************ *******************
Lần2 ***************************** Eb/N0 = 2.00 db
*********************************** Kich thuoc khung = 300, rate 1/2.
665 Khung da trao doi , 10 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 10):
2.1310e-002 3.8149e-003 1.2414e-003 7.2160e-004 5.8536e-004 4.3902e-004 4.4911e-004 3.9360e-004 4.4406e-004 3.4314e-004 Ti le loi khung (Tu lan lap 1 cho den 10):
8.7669e-001 2.6316e-001 7.6692e-002 3.4586e-002 2.8571e-002 1.9549e-002 1.6541e-002 1.5038e-002 1.3534e-002 1.5038e-002 ************************************************************ *******************
Lần3 ***************************** Eb/N0 = 3.00 db
*********************************** Kich thuoc khung = 300, rate 1/3.
3406 Khung da trao doi , 10 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 5):
3.5705e-003 1.8030e-004 7.8819e-005 6.9952e-005 4.4335e-005 Ti le loi khung (Tu lan lap 1 cho den 5):
2.9008e-001 1.9671e-002 5.8720e-003 4.1104e-003 2.9360e-003 ************************************************************ *******************
Lần4 ***************************** Eb/N0 = 2.00 db
*********************************** Kich thuoc khung = 300, rate 1/3.
408 Khung da trao doi , 10 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 10):
2.4345e-002 4.9595e-003 2.1467e-003 1.5380e-003 1.0034e-003 8.0603e-004 8.1425e-004 7.5668e-004 7.1555e-004 6.2508e-004 Ti le loi khung (Tu lan lap 1 cho den 10):
8.0147e-001 2.3775e-001 9.8039e-002 6.1275e-002 4.4118e-002 3.6765e-002 3.4314e-002 2.9412e-002 2.4510e-002 2.4510e-002 ************************************************************ *******************
Lần5 ***************************** Eb/N0 = 3.00 db
*********************************** Kich thuoc khung = 500, rate 1/2.
1557 Khung da trao doi , 5 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 5):
3.5505e-003 7.3512e-005 1.9345e-005 2.5794e-005 2.0635e-005 Ti le loi khung (Tu lan lap 1 cho den 5):
4.6692e-001 1.2845e-002 3.2113e-003 3.2113e-003 3.2113e-003 ************************************************************ *******************
Lần6 ***************************** Eb/N0 = 3.00 db ***********************************
Kich thuoc khung = 1000, rate 1/3. 1420 Khung da trao doi , 3 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 5):
3.0484e-003 4.2338e-005 1.4113e-005 1.8347e-005 6.3507e-006 Ti le loi khung (Tu lan lap 1 cho den 5):
6.1972e-001 1.9014e-002 7.0423e-003 4.2254e-003 2.1127e-003 ************************************************************ *******************
Lần7 ***************************** Eb/N0 = 3.00 db
*********************************** Kich thuoc khung = 1000, rate 1/2.
1177 Khung da trao doi , 3 Khung bi loi. Ti le loi bit (Tu lan lap 1 cho den 5):
3.5560e-003 2.1283e-005 6.8106e-006 5.1079e-006 5.1079e-006 Ti le loi khung (Tu lan lap 1 cho den 5):
7.3322e-001 1.0195e-002 4.2481e-003 2.5489e-003 2.5489e-003 ************************************************************ *******************
Hình vẽ có được sau khi chạy file:Hinh_kq.m từ các kết quả cuối cùng
Hình 4.4: Kết quả lần 2
Hình 4.6: Kết quả lần 4
Hình 4.8: Kết quả lần 6
Qua những hình trên và một số kết quả chạy chương trình khác, ta có nhận xét:
• số lần lặp càng lớn thì tỉ lệ lỗi bit cũng như tỉ lệ lỗi khung đều giảm.
• nếu số lương khung đưa vào càng lớn thì BER và FER càng thấp(thể hiện rõ trong Hình 4.7 và Hình 4.8).
• mã sẽ hoạt động tốt khi ta lựa chọn kích thước khung lớn.
• tỉ lệ lỗi khung(FER) thường lớn hơn tỉ lệ lỗi bit(BER) nhưng lần lặp càng lớn thì BER~FER(trong hình 4.7 và 4.8 khi lần lặp thứ 5 thì BER~ FER ~0).
4.4 Kết luận chương
Sau khi chạy chương trình với các thông số đầu vào cho như bảng 4.1 và chạy nhiều lần chương trình với các thông số khác nhau và các kết quả này đều
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI
Do thời gian có hạn nên trong đồ án này vẫn chưa trình bày hết các vấn đề về
mã Turbo ,trong đồ án này chỉ tập trung trình bày về mã Turbo PCCC( kết nối song song ).Nhìn nhận một cách tổng quát về các thuật toán giải mã , các kỹ thuật mã hoá ,bộ chèn và kỹ thuật xoá của mã Turbo PCCC rate 1/2 ,1/3 và chương trình mô phỏng cũng dựa trên mã này.
Một phần quan trọng của mã Turbo là thiết kế bộ chèn và biện pháp cải tiến bộ mã vẫn chưa được trình bày chi tiết kỹ trong đồ án này.
Một số hướng phát triển tiếp theo của đồ án như:
Tìm hiểu về mã Turbo kết nối nối tiếp( SCCC). Tìm hiểu về mã Turbo kết nối hổn hợp(HCCC). Nghiên cứu các thuật toán gần tối ưu khác.
Ứng dụng mã Turbo vào các hệ thống truyền thông thế hệ thứ
3 và thứ 4.
Mã Turbo cải tiến từ mã khối(Turbo Block Codes).
Mã TCM(Turbo Codes Modulation): Kết hợp giữa mã Turbo và điều chế.
Các loại mã kết hợp giữa mã hoá nguồn và mã hoá kênh.
TÀI LIỆU THAM KHẢO
1. Nguyễn Thuý Vân ,“Lý thuyết mã”, NXB Khoa Học và Kỹ Thuật Hà Nội,1999.
2. Vũ Đức Thọ ,“Thông tin di động số Cellular”, NXB Khoa Học và Kỹ Thuật Hà Nội, 1997.
3. “Giáo trình thông tin di động” ,Hoc viện Bưu chính viễn thông cơ sở 2 Tp Hồ
Chí Minh.
4. Đặng Văn Chuyết , Nguyễn Tuấn Anh ,“Cơ sở lý thuyết truyền tin”, NXB Giáo Dục, 1999. n
5. Mr. Harte ,”Introduction to Code Division Multiple Access”, Althos Inc,2004. 6. Ali H.Mugaibel and Maan A.Kousa,”Understanding Turbo Codes”, King Fahd University of Petroleum and Minerals PO Box ,1271,Dhahran 31261,Saudi Arabia.
7. S. Adrian Barbulescu, Steven.S. Pietrobon,”Turbo Codes:A tutorial on a new class of powerful error correcting coding schemes”,”Part1: Code Structures and Interleaver Design”,26 October 1998.
8. Nguyễn Hoàng Hải-Nguyễn Khắc Kiểm- Nguyễn Trung Dũng-Hà Trần
Đức,”Lập trình Matlab”, NXB Khoa Học và Kỹ Thuật ,Hà Nội 2003. 9. Một số website về viễn thông.
CÁC TỪ VIẾT TẮT
9 AWGN: Additive White Gaussian Noise :Nhiễu Gauss trắng
9 APP : A Posterior Probability: Xác suất Posterior
9 BER : Bit Error Rate: Tỉ lệ lỗi bit
9 FER : Frame Error Rate :Tỉ lệ lỗi khung.
9 HCCC : Hybrid Concatenated Convolutional Code: Kết nối hỗn hợp các mã tích chập..
9 I : Interleaver : Bộ cài xen chèn.
9 LLR : Log likelihodd Ratio :Tỉ số tin cậy.
9 MAP:Maximum A Posteriori:là xác suất lớn nhất của 1 bit nào đó được truyền dựa trên tín hiệu nhận được..
9 MMC : Multimedia Communication : Truyền thông đa phương tiện.
9 ML : Maximum Likelihood : Khả năng xảy ra lớn nhất.
9 PCCC : Parallel Concatenated Convolutional Code: Mã tích chập kết nối song song.
9 PN : Pseudo Noise: Tạp âm giả ngẫu nhiên
9 RSC : Recursive Systemtic Convolutional Code: Mã tích chập hệ thống đệ quy.
9 SOVA : Soft VA : thuật toán Viterbi quyết định mềm.
9 SNR:Signal to Noise Ratio : Tỉ số tín hiệu / nhiễu.
9 SCCC : Serial Concatenated Convolutional Code : Mã tích chập kết nối nối tiếp.