Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
1,1 MB
Nội dung
MỞ ĐẦU Tính cấp thiết đề tài: Mã hóa kênh có vai trị quan trọng việc truyền dẫn thơng tin số Mục đích mã hóa kênh nhằm tăng khả tái tạo liệu bị can nhiễu phía đầu thu Mã hóa kênh nói chung mã hóa LDPC nói riêng cần giải ba vấn đề quan trọng là: Làm để tối ưu thuật toán giải mã để tăng khả sửa lỗi mã, giảm độ phức tạp trình giải mã? Làm để xây dựng mã có khả sửa lỗi tốt nhất, với độ phức tạp trình mã hóa, giải mã chấp nhận được? Làm để xây dựng, tối ưu hóa mơ hình tích hợp mã có khả chống lỗi tốt mà độ phức tạp hệ thống chấp nhận Ngày nay, dịch vụ mạng viễn thông gia tăng không ngừng nguồn tài ngun mạng viễn thơng hữu hạn Vì vậy, việc khai thác nguồn tài nguyên mạng viễn thông cách hiệu yêu cầu tiên thiết kế hệ thống viễn thông số Việc nghiên cứu giải vấn đề liên quan đến mã hóa kênh khơng đáp ứng u cầu thực tiễn cấp thiết việc tăng thông lượng kênh truyền mà cịn có ý nghĩa khoa học đưa cơng cụ mơ tính tốn đại vào lĩnh vực tạo mã hóa kênh tối ưu Đề tài luận án: “Nghiên cứu xây dựng mã sửa sai có ma trận kiểm tra mật độ thấp truyền dẫn số” sâu nghiên cứu mã sửa sai LDPC nhằm mục tiêu sau: Nghiên cứu, xây dựng ma trận sinh ma trận kiểm tra mã LDPC để tăng khả chống lỗi mã; Nghiên cứu đề xuất mơ hình tích hợp mã LDPC, giải toán độ phức tạp khả chống lỗi hệ thống Đối tượng nghiên cứu đề tài: Các kênh truyền dẫn có can nhiễu tạp âm phân bố AWGN, pha đinh Rayleigh; Các hệ thống phân tập không gian, thời gian: V-BLAST, Alamouti; Hệ thống Internet sử dụng giao thức ARQ lai ghép H-ARQ; Các mơ hình hệ thống tích hợp mã URC, LDPC, ánh xạ Phương pháp nghiên cứu: Sử dụng phương pháp nghiên cứu so sánh, mô phỏng, so sánh thử nghiệm hoạt động mã LDPC kênh truyền dẫn chương trình mơ viết ngôn ngữ C++ Cấu trúc luận án gồm mở đầu, chương phụ lục: Chương 1: Mã sửa sai có ma trận kiểm tra mật độ thấp LDPC Chương 2: Thiết kế ma trận sinh ma trận kiểm tra mã LDPC Chương 3: Xây dựng hệ thống tích hợp mã LDPC CHƯƠNG 1: MÃ SỬA SAI CÓ MA TRẬN KIỂM TRA MẬT ĐỘ THẤP LDPC 1.1 Sự phát triển mã sửa sai Năm 1948 Claude E.Shannon phát hành cơng trình nghiên cứu lý thuyết tốn học cơng nghệ truyền thơng Trong cơng trình Shannon phát triển mơ hình thuật tốn cho phép giải vấn đề truyền dẫn tín hiệu Hình 1.1: Mơ hình hệ thống truyền tin số Nguồn tin là: nơi tạo tin M, với xác suất fM (M = m) Entropy M xác định sau: H (M ) f M (m) log f M (m) (1.1) m Mã hóa Nguồn: Bộ mã hóa nguồn loại bỏ thơng tin dư thừa chuỗi đầu vào Mã hóa kênh: Bộ mã hóa kênh ghép thêm thơng tin dư thừa vào chuỗi liệu đầu vào Mục đích việc ghép thêm thông tin dư thừa vào nhằm tăng khả tái tạo lại liệu bị can nhiễu phía đầu thu Kênh: Hàm xác suất truyền dẫn kênh định nghĩa fY/X(Y/X) Trong kênh truyền dẫn kênh khơng nhớ Có hai dịng mã sửa sai mã chập mã khối Những năm gần đây, phát triển cơng nghệ tính tốn hỗ trợ nhiều cho mã hóa khối u cầu khối lượng tính tốn cao nên với ưu điểm khả chống sửa lỗi tốt hơn, mã hóa khối sử dụng nhiều thực tế Trong thời gian gần hai loại mã hóa quan tâm phát triển mã Turbo mã LDPC Mackay Neal thực nghiệm với mã LDPC có từ mã lớn chứng minh mã LDPC có khả sửa lỗi cao so với mã Turbo, truyền dẫn qua kênh truyền có phân bố tạp âm trắng kiểu Gauss AWGN (Additive White Gaussian Noise) So sánh với mã Turbo, mã LDPC có lợi khơng bị ảnh hưởng tượng sàn lỗi (Error Floor), tượng làm tỉ lệ lỗi bít phía đầu (BER) giảm xuống giá trị cực nhỏ tỉ số E b/N0 tăng lên nhiều Độ phức tạp tính tốn mã Turbo cao so với LDPC độ dài từ mã tăng lên So sánh với dòng mã tiên tiến khác mã Turbo ta thấy độ phức tạp mã LDPC khơng lớn nên áp dụng cho thiết bị truyền hình dân dụng đầu thu số vệ tinh tiêu chuẩn DVB-S2 (Digital Video Broadcasting-Satellite 2) 1.2 Tổng quan mã LDPC Mã LDPC thuộc họ mã khối, quan hệ ma trận sinh G ma trận kiểm tra H biểu diễn phương trình sau: H MxN G T MxK NxK (1.2) Trong N số bít mã, K số bít thơng tin M=(N-K) số bít kiểm tra từ mã Giả sử chuỗi bít thơng tin S1xK đầu vào mã hóa LDPC, có kích thước K bít Ở đầu mã hóa LDPC nhận từ mã C1xN, có độ dài từ mã N bít mã Q trình mã hóa chuỗi bít thơng tin đầu vào S1xK thực cách nhân véc tơ chuỗi bít với ma trận sinh GKxN mã LDPC Quá trình tiến hành sau: C1xN= S1xK.GKxN (1.3) Tính hợp lệ từ mã kiểm tra phương trình kiểm tra từ mã sau: Syndrome1xM C1xN HT NxM (1.4) Nếu từ mã từ mã hợp lệ, véc tơ Syndrome véc tơ Trường hợp từ mã không hợp lệ véc tơ Syndrome véc tơ khác Q trình tính toán ma trận sinh từ ma trận kiểm tra tiến hành sau Giả sử: C1xN tính theo (1.3) từ mã LDPC chứa véc tơ chuỗi bít thơng tin S phần cuối từ mã phần đầu từ mã véc tơ P chứa bít kiểm tra Từ mã C viết lại dạng sau: C1xN (P1xM S1xK ) (1.5) Ma trận kiểm tra HMxN viết lại dạng hai ma trận liền kề (AMxM|BMxK), ma trận thành phần A ma trận độc lập tuyến tính Từ phương trình kiểm tra tính hợp lệ từ mã (1.2), ta viết lại sau: C.H T C.(A B) T P.A T S.B T (1.6) Ma trận A độc lập tuyến tính, ta tính ma trận đảo (AT)-1 Từ phương trình (1.6) suy ra: P S.( BT ( AT ) 1 ) (1.7) Từ phương trình (1.7), ta suy ma trận sinh mã LDPC sau: G KxN [(BT (A T ) 1 ) KxM | I KxK (1.8) Tuy nhiên để tìm ma trận A nghịch đảo được, tồn ma trận kiểm tra H, ta phải thực hoán vị cột ma trận H kiểm tra tính độc lập tuyến tính ma trận A phương pháp toán học Gauss Sau thực hoán vị cột ma trận H ma trận A độc lập tuyến tính, ma trận H trở thành ma trận kiểm tra Hr Như ma trận sinh mã LDPC ma trận sinh G tính từ ma trận hốn vị Hr phương trình kiểm tra từ mã hợp lệ phải dựa hai ma trận Thơng thường việc tính toán ma trận sinh G mã LDPC từ ma trận kiểm tra Hr phức tạp, cần kiểm tra tính độc lập tuyến tính cột nhiều lần (sau lần hoán vị) chiếm nhiều phép tính cho q trình tính tốn ma trận đảo 1.3 Các phương pháp giải mã LDPC Có hai phương pháp giải mã LDPC: giải mã theo xác suất (Probability Decoding) hay cịn gọi giải mã thuật tốn truyền bá độ tin cậy BPA (Belief Propagation Algorithm) giải mã thuật tốn tích-tổng (Sum-Product Algorithm) Thuật tốn đề xuất tài liệu nghiên cứu Gallager Phương pháp giải mã thứ hai dựa thuật tốn trao đổi thơng tin MPA (Message Passing Algorithm) nút kiểm tra (Check Nodes) nút biến số (Variable Nodes), ma trận kiểm tra mã LDPC Các thuật tốn giải mã ước lượng thơng tin hậu nghiệm đầu giải mã dựa thông tin tiền nghiệm đầu vào chuỗi bít mã thu được, phần thơng tin chuỗi bít tạo từ bên giải mã thông tin kênh truyền dẫn (Channel Information)2 Nhận xét: Mã LDPC có khả sửa lỗi tốt, sàn lỗi khơng có độ phức tạp tương đối nhỏ so với Turbo sử dụng từ mã ngắn, khẳng định mã LDPC hồn tồn phù hợp với thiết kế chip, RAM thiết bị mã hóa giải mã truyền hình Mã LDPC phổ biến rộng rãi hệ thống tiêu chuẩn truyền hình số mặt đất DVB - T2, DVC-2 truyền hình số qua vệ tinh DVB-S2 Trong chương tiếp theo, luận án đề xuất thiết kế mơ mơ hình mã LDPC mới, phân tích, đánh giá, so sánh, với mơ hình lai ghép H-ARQ với mã LDPC, V-BLAST sử dụng mã LDPC nhằm cải thiện khả sửa lỗi mã LDPC giảm độ phức tạp hệ thống lai ghép với mã LDPC, giúp đưa hệ thống lai ghép mã LDPC có khả áp dụng vào thực tế hệ thống thu phát truyền hình số, máy phát, đầu thu settopbox CHƯƠNG 2: THIẾT KẾ MA TRẬN SINH VÀ MA TRẬN KIỂM TRA CỦA MÃ LDPC 2.1 Xây dựng hàm phân bố Trong chương ma trận sinh ma trận kiểm tra mã LDPC thiết kế hàm phân bố mật độ rời rạc dừng , mục đích thiết kế nhằm cải thiện khả sửa lỗi mã LDPC dải giá trị C/N thấp Ma trận kiểm tra H mã LDPC thiết kế dựa hàm phân bố mật độ cho nút thông tin nút kiểm tra ma trận kiểm tra Ma trận sinh G mã LDPC tính tốn từ ma trận kiểm tra PCM H phương pháp thuật toán rút gọn Gauss Trong chương này, luận án sâu vào việc phân tích thiết kế ma trận sinh G ma trận kiểm tra H mã LDPC theo quan hệ đề cập: G k x n I kxk A kxm ; H m x n A T I'mxm ; mxk G kxn H mxn kxm (2.1) Trong k, n, m số bít thơng tin, độ dài từ mã số bít kiểm tra từ mã LDPC; Ikxk, I'mxm ma trận đơn vị có kích thước (kxk) (mxm) Khả sửa lỗi mã LDPC thiết kế theo phương pháp phụ thuộc hoàn toàn vào cấu trúc ma trận Akxm Để Thơng tin a posteriori chuỗi bít đầu giải mã tổng thông tin kênh truyền, thông tin a priori đầu vào chuỗi bít thơng tin chuỗi bít Extrinsic tính tốn bên giải mã cột ma trận Akxm có khoảng cách trung bình lớn, hàm phân bố mật độ cột thuộc ma trận phải hàm phân bố rời rạc Các cột ma trận tương ứng với bít mã kiểm tra từ mã LDPC, chúng cần chứa đầy đủ thông tin kiểm tra bít thơng tin từ mã, mà cịn phải thỏa mãn tính rời rạc, khơng lặp lại chúng Để làm điều luận án đưa khái niệm hàm phân bố chuẩn rời rạc giới hạn cột ma trận thành phần Akxm ma trận sinh G hàm phân bố tương đối cho hàm ma trận 2.1.1 Xây dựng hàm phân bố cho ma trận thành phần Trong phần thiết kế này, tác giả tạo ma trận thành phần Akxm ma trận sinh không chứa cột có hàm trọng để tránh tượng khơng độc lập tuyến tính cột ma trận sinh hay tăng khả chứa thông tin bít nguồn bít mã LDPC, thiết kế cột ma trận thành phần ma trận sinh khơng chứa cột có hàm trọng (do mã LDPC mã hệ thống, nên ma trận sinh chứa ma trận đơn vị thành phần có hàm trọng cột 1) Giả sử ma trận thành phần Akxm có số hàng K tương ứng với K bit thông tin, thiết kế với cột có hàm trọng bé 2, ta nhận thấy xác suất để tồn cột ma trận thành phần không trùng lặp tính (1-21K ).(1-22-K) (1-1/8).(1/4) Với K tương đối lớn xác suất trở nên cực nhỏ, cụ thể với K >10, giá trị xác suất vào khoảng 0,125 Xác suất để cột ma trận thành phần không trùng lặp tạo (1-), xác suất cột ma trận thành phần tạo trùng lặp xác suất giới hạn giá trị (K) ≤21-K, với điều kiện K >1 Khi tăng hàm trọng cột ma trận thành phần lên, xác suất trùng lặp tăng cao, hay nói cách khác xác suất hàng ma trận không trùng lặp giảm Để tăng hàm trọng cột ma trận Akxm, mà hạn chế suy giảm xác suất cột ma trận thành phần tạo độc lập tuyến tính với nhau, ta thực hàm phân bố xác suất cho cột có hàm trọng bé bằng giá trị (2) sau: ; K (i) i (i 1) (2) với i = 3, 4, , K (2.2) Như giá trị hàm trọng trung bình cột ma trận Akxm lúc lnK Tuy nhiên, việc phân bố xác suất tạo cột có hàm trọng nhỏ hai phải đảm bảo mối liên kết cột có hàm trọng cột có hàm trọng cao hơn, đồng thời đảm bảo tính trùng lặp giống cột có hàm trọng tương ứng Để đảm bảo lượng thơng tin bít nguồn có bít mã lớn số lượng cột có hàm trọng bé nhất, cụ thể phải S c ln( K / ) K ) Trong đó: c số dương nhỏ bé 1, xác suất đề cập trên, K số bít nguồn thơng tin Để phân bố có giới hạn hàm trọng dừng, sử dụng hàm phân bố chặn xác định sau: S 2.K Voi i 2, , 1 S K i (i ) S S 2.K Voi i K log( ) S 2.K Voi i S Trong giá trị ( 2.K ) đảm S (2.3) bảo bít mã tạo từ hai bít nguồn thơng tin ngẫu nhiên, hay hàm trọng bé cột ma trận thành phần Akxm Tổng hợp tất phân bố ta phân bố rời rạc chuẩn có giới hạn cho hàm trọng ma trận thành phần Akxm, hay nói cách khác phân bố chuẩn rời rạc giới hạn cho bậc bít kiểm tra sau: (d ) (i) (i) Z (2.4) Trong đó, [Z= i(i) + (i)] thành phần chuẩn hóa để đảm bảo phân bố tổng (i) ln nhỏ Khi tăng hàm trọng tối thiểu cột ma trận thành phần Akxm lên lớn 2, ta nhận thấy xác suất để cột ma trận không trùng lặp nhau, hay xác suất để lượng thơng tin bít kiểm tra lớn bị giảm rõ rệt Mặt khác, giá trị trung bình hàm trọng cột ma trận tăng lên, giá trị trung bình bậc bít kiểm tra tăng lên điều làm số lượng phép tính giải mã mã LDPC tăng tỉ lệ với hàm trọng cực tiểu ma trận Akxm Trong trường hợp tổng quát, thiết kế hàm trọng bé cột ma trận thành phần t, viết lại hàm phân bố chuẩn rời rạc có giới hạn cho cột ma trận Akxm thuộc ma trận sinh mã LDPC sau: K t i S 1 S t t S S S ( x) 1 .x .x ln .x K Z K Z i K i Z K K t i 2.t , ,( 1) i.( 1) ( 1) S t S (2.5) Trong t số ngun dương, K số bít thơng tin có từ mã, K (0 1), S c K ln( ) Z phân số chuẩn hóa đảm bảo tổng xác suất hàm phân bố Hàm phân bố phương trình (2.5) có bậc lớn cột ( K t ) để đảm bảo bít thơng tin kiểm tra S t bít kiểm tra, mà đảm bảo khoảng cách cực tiểu cột ma trận sinh thành phần lớn 2.1.2 Xây dựng hàm phân bố cho bit thông tin Thông thường hàm tạo chuỗi số nguyên ngẫu nhiên biểu diễn công thức sau: I j 1 (a.I j C ) mod M (2.6) Trong M số số hàm cộng mudulo sử dụng, a c số nguyên gọi số nhân số tăng tương ứng Để đạt hàm phân bố mật độ đồng bít thông tin, ta áp dụng hai phương pháp tạo chuỗi ngẫu nhiên Phương pháp thứ tạo số nguyên ngẫu nhiên từ phép dịch tổng hai số nguyên chuỗi nguyên sau lấy mudulo 2b, 2b tương ứng với số phần tử nhớ ghi dịch Hàm tạo chuỗi nguyên phương pháp thứ xác định sau: I n [( I n j I nk ) mod 2b] rot r (2.7) Trong đó, rot ký hiệu hàm quay (hay hàm dịch) Các bít đại diện cho số nguyên [(In-j + In-k) mod 2b] dịch quay vịng r vị trí bít Phương pháp thứ hai phương pháp dịch trước bít đại diện cho số nguyên In-j In-k tương ứng r1 r2 vị trí, trước thực cộng mudulo Hàm tạo chuỗi theo phương pháp thứ hai xác định sau: I n [(I n j rot r1 I nk rot r2 )] mod 2b (2.8) Hai phương trình tạo chuỗi ngẫu nhiên áp dụng với điều kiện bậc bít thơng tin sau: dm Dm (2.9) 1 r Dm [ (d c 1)] r Trong dm bậc bít thơng tin, D m bậc trung bình bít thơng tin dc bậc trung bình bít kiểm tra thuộc từ mã LDPC Hình 2.2 đồ thị Histogram phân bố mật độ bậc bít thơng tin sử dụng phương pháp tạo chuỗi nguyên ngẫu nhiên khác Như nhận thấy hình 2.2, chuỗi số nguyên tạo hàm ngẫu nhiên ngơn ngữ lập trình C có phân bố rải rác từ đến 12, chuỗi số nguyên tạo hai phương pháp dịch bít có phân bố khoảng hẹp từ đến Khi áp dụng hai phương pháp dịch bít nói với điều kiện bậc bít thơng tin thỏa mãn phương trình(2.9), kết chuỗi số ngun đầu có phân bố tập trung quanh giá trị Điều có nghĩa việc sử dụng hai phương pháp dịch bít phối hợp với điều kiện phương trình (2.9) cho phép tạo hàm phân bố mật độ đồng cho bít thơng tin từ mã LDPC Hay nói cách khác, việc sử dụng hai phương pháp đem lại phân bố hàm trọng đồng cho hàng ma trận sinh thành phần Hình 2.2: Phân bố mật độ cho bít thơng tin 2.2 Mô phỏng, đánh giá mã LDPC thiết kế Bảng 2.1: Các thơng số mơ mã LDPC có hàm phân bố mật độ cho phương trình (2.5) thông số t = Kênh tạp nhiễu AWGN Các thơng số Phương trình (2.5) = 0.5, c=0, t=2 Tổng số bít thơng tin 106 bít Tỉ lệ mã 1/3 Kiểu điều chế QPSK Số lần lặp giải mã 0,2,4,6 Mã LDPC sử dụng hàm phân bố bậc bít thơng tin Ký hiệu phương trình (2.6) LDPC loại I Mã LDPC sử dụng hàm phân bố bậc bít thơng tin Ký hiệu phương trình (2.6) (2.7) LDPC loại II Mã LDPC sử dụng hàm phân bố bậc bít thơng tin Ký hiệu phương trình (2.6), (2.7) với điều kiện bậc LDPC loại III trung bình bít thơng tin p.trình (2.9) Hình 2.3: Mơ khả sửa lỗi khác mã LDPC (1200, 1800), sử dụng hàm phân bố mật độ bít kiểm tra cho phương trình (2.5) sử dụng hàm phân bố mật độ khác cho bít thơng tin từ mã LDPC Hình 2.3 kết mơ khả sửa lỗi khác mã LDPC (1200, 1800) sử dụng hàm phân bố mật độ cho bít kiểm 10 tra cho phương trình (2.5) hàm phân bố mật độ cho bít thơng tin khác Các thông số mã LDPC cho phương trình (2.5) là: =0,5; c =0.1; t=2 Có thể thấy khả sửa lỗi mã LDPC (1200, 1800), sử dụng tạo chuỗi nguyên ngẫu nhiên phương pháp dịch bít kết hợp với điều kiện bậc bít thơng tin phương trình (2.9), tốt hẳn so với phương pháp khác Như mã LDPC có hàm phân bố mật độ cho bít thơng tin sử dụng phương pháp tạo chuỗi số nguyên thiết kế trình bầy mục này, có khả sửa lỗi tốt nhiều so với phương pháp thông thường khác Khả sửa lỗi mã LDPC (1200,3600) có hàm phân bố mật độ cho phương trình (2.5) t>1, phụ thuộc vào số lần lặp giải mã Bảng 2.2: Thông số mã LDPC sử dụng mơ Các thơng số Phương trình (2.5) = 0.5, c=0.1 Tổng số bít thơng tin 1200.1000 bít Mã LDPC (1200,2400) LDPC (1200,3600) có t =2 Mã LDPC (1200,1800) có t =3 Tỷ lệ mã LDPC tương ứng 1/3, 1/2, 2/3 Số lần lặp cực đại 20 Kiểu điều chế QPSK Kênh truyền AWGN, fading Rayleigh không tương quan Ví dụ số lần lặp giải mã 6, khoảng cách hai giá trị tỉ số Eb/N0 yêu cầu để đạt giá trị BER đầu