1. Trang chủ
  2. » Luận Văn - Báo Cáo

Mô phỏng, đánh giá chất lượng hệ thống truyền tin số sử dụng mã hamming với các phương thức điều chế khác nhau

28 1,6K 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 28
Dung lượng 5,4 MB

Nội dung

Lời mở đầu Ngày nay, phát triển công nghệ diễn động nên nhu cầu truyền tin sống ngày trở nên ý đến nhiều Thông tin đóng vai trò quan trọng đời sống, quân sự, ngoại giao….vì việc truyền dẫn thông tin phải đặt lên hàng đầu Đảm bảo an toàn truyền tin giúp thu nhận thông tin cách xác Tuy nhiên trình truyền dẫn không tránh khỏi lỗi nhiễu Do việc sửa lỗi cần thiết Từ có nhiều phương pháp sửa lỗi đời: Mã chập, mã vòng, mã BCH nhị phân, mã Hamming Mỗi phương pháp sửa lỗi mang ưu điểm nhược điểm riêng biệt, việc lựa chọn phương pháp sửa lỗi phải phù hợp để hệ thống hoạt động ổn định Sau chúng em xin trình bày đề tài: “Mô phỏng, đánh giá chất lượng hệ thống truyền tin số sử dụng mã Hamming với phương thức điều chế khác nhau” Với hướng dẫn giảng viên: ThS Phạm Mạnh Toàn Trong trình xây dựng đồ án khó tránh sai sót, mong quý thầy cô bạn dẫn, đóng góp ý kiến để đề tài hoàn thiện Xin trân trọng cảm ơn Sinh viên thực Nguyễn Việt Thắng Phần 1: MÃ HÓA HAMMING SỬ DỤNG TRONG TRUYỀN TIN SỐ 1.1 Tổng quan mã hóa kênh 1.1.1 Khái niệm chung Mã hóa kênh việc đưa thêm bit dư vào tín hiệu số theo quy luật đấy, nhằm giúp cho bên thu phát chí sửa lỗi xảy kênh truyền Tín hiệu truyền qua kênh truyền bị ảnh hưởng nhiễu, can nhiễu, fading… tín hiệu đầu thu bị sai Mã hóa kênh dùng để bảo vệ liệu không bị sai cách thêm vào bit dư thừa Ý tưởng mã hóa kênh gửi chuỗi bit có khả sửa lỗi Mã hóa kênh không làm giảm lỗi bit truyền mà làm giảm lỗi bit liệu Mục đích lý thuyết mã hóa kênh truyền tìm mã truyền thông nhanh chóng, chứa đựng nhiều mã hợp lệ sửa lỗi phát lỗi xảy Các mục đích không phụ thuộc vào nhau, loại mã có công dụng tối ưu cho ứng dụng riêng biệt Những đặc tính mà loại mã cần tuỳ thuộc nhiều vào xác suất lỗi xảy trình truyền thông Hình 1.1 Sơ đồ khối hệ thống truyền tin Mã hóa kênh khâu quan trọng hệ thống thông tin số không dây với mã hóa nguồn, ghép kênh, điều chế,… để tạo tín hiệu phù hợp cho việc truyền dẫn vô tuyến tín hiệu, có khả điều khiển sai bit sửa lỗi xảy có để khôi phục lại gần nguyên dạng tín hiệu tin tức mà truyền Vị trí mã hóa kênh truyền hệ thống thông tin truyền qua kênh truyền minh họa hình (Hình1.1) Việc giảm thiểu xác suất sai dựa vào việc phát sai sửa sai dẫn đến việc giảm tỉ số tín hiệu nhiễu cần thiết nhờ giảm công suất, tiết kiệm lượng Vai trò mã hóa kênh làm giảm xác suất sai thông tin truyền qua kênh truyền Việc giảm tỉ số tín hiệu nhiễu cần thiết nhờ giảm công suất, tiết kiệm lượng Việc sửa sai hữu hiệu cho tín hiệu nhỏ thuận lợi cho việc bảo mật, trải phổ tăng tốc độ xác thông tin nhận, mục đích quan trọng truyền thông 1.1.2 Phân loại mã hóa kênh Hiện nay, truyền tin số tồn hai loại mã: Mã khối mã xoắn (liên tục) Trong đề tài quan tâm nghiên cứu mã khối 1.2 Mã Hamming 1.2.1 Giới thiệu Mã Hamming thuộc mã khối Mã khối hình thành sau: Từ chuỗi bit X tin tức (ở dạng nhị phân) có độ dài (như hữu hạn), chia thành khối khối bao gồm k bit (ký hiệu) thông tin, khối cuối không đủ k bit thông tin bổ sung thêm số ký hiệu dạng 100…, để đủ trở thành khối có k ký hiệu, sau giải mã ký hiệu bị loại bỏ Mỗi khối có k bit thông tin dài n ký hiệu, bao gồm k từ mã, gọi mã khối tuyến tính M(n,k), với điều kiện tất k từ mã hình thành nên không gian bậc k không gian vector bậc n trường nhị phân GF(2) Tập hợp phần tử 1, với phép cộng phép nhân mod2, gọi trường nhị phân ký hiệu GF(2) Đối với trường GF(2) áp dụng toán tử đại số tuyến tính, có toán tử ma trận Nói cách đơn giản mã nhị phân gọi tuyến tính, tổng theo modul (mod2) hai từ mã từ mã mã 0⊕0 = 0 ⊕1 = 1⊕ = 1 ⊕1 = 0.0 = 0.1 = 1.0 = 1.1 = Mọi mã khối tuyến tính mã hệ thống Mã khối hệ thống mã khối mà khối bao gồm k bit thông tin r ký hiệu dư thừa, tạo thành khối tách biệt Hình 1.2 Một khối mã(từ mã) mã khối hệ thống Trên sở toán học, mã khối tuyến tính hệ thống M(n,k) hoàn toàn xác định nhờ ma trận sinh G(n,k) G( n , k ) =  E( k , k ) ; R( r ,k)  (1) Trong E(k,k) - ma trận đơn vị bậc vị bậc (k*k) • R(r,k) - ma trận đơn vị bậc vị bậc (r*k) • r số ký hiệu dư ( ký hiệu kiểm tra) • k số bit tin từ mã − Trọng số Hamming Trọng số Hamming từ mã nhị phân αi, thường ký hiệu w(αi), số lượng ký hiệu có từ mã Chẳng hạn, có từ mã αi=100101, trọng số Hamming tù mã xác định w(αi)=3 − Khoảng cách Hamming Khoảng cách Hamming hai từ mã αi, αk (có độ dài đều), thường ký hiệu d(αi, αk) số lượng vị trí tương ứng mà chúng có giá trị khác Chẳng hạn, αi=1010011, αk=1000101, khoảng cách Hamming hai từ mã xác định d(αi,αk)=3 Từ đây, có d(αi,αk)= w(αi ⊕ αk), với ký hiệu ⊕ phép cộng theo modul (mod2) − Khoảng cách Hamming tối thiểu Khoảng cách Hamming tối thiểu mã (chỉ áp dụng cho mã đều), thường ký hiệu dmin, d0, xác định d0=min d(αi,αk) với i,k Tham số d0 mã định khả phát hiên lỗi sửa lỗi − Số lỗi Số lỗi phát giải mã, ký hiệu e xác định e=d 0-1 Một mã có d0=1, khả phát lỗi nào, e=0, gọi mã đầy, hay mã dư thừa, g C=0 Một mã muốn phát hiên lỗi, e=1, cần d0=2 Các mã có d0≥2 gọi mã vơi, hay mã có dư thừa g C>0 ( gC = − H (X) − n = 1− log 2k k = 1− > ), r=0 gC=0) n k+r − Số lỗi sửa  d0 − 1 ,   Số lỗi sửa giải mã, ký hiệu t xác định t ≤  ký hiệu [x] để phép lấy phần nguyên x Từ công thức ta xác định mã muốn sửa lỗi cần d0≥2t+1 Chẳng hạn, mã muốn sửa lỗi, t=1, cần d0≥3 (trong trường hợp phát lỗi) Trong loại mã khối mã khối trường nhị phân GF(2), mã khối trường GF(2m) Mã Hamming mã sửa lỗi tuyến tính, mã phát bit hai bit bị lỗi Mã Hamming sửa lỗi bit bị sai gây Các mã có tham số với m≥3 gọi mã Hamming G( n, k ) =  E( k , k ) ; R( r ,k)  • • • • Chiều dài từ mã: n= 2m-1 Chiều dài phần tin: k=n-m Số ký hiệu dư: r=m Khả sửa sai: t=1 Khoảng cách Hamming hai từ mã ký hiệu d số lượng vị trí tương ứng mà chúng có giá trị khác Khoảng cách Hamming cực tiểu mã ký hiệu d0 Tham số d0 mã định khả phát lỗi sửa lỗi − d0=1+ số ký hiệu hàng có ký hiệu (trong ma trận R(r,k) − Số lỗi phát giải mã, ký hiệu e: e=d0-1 1.2.2 Thuật toán mã hóa mã Hamming − Các bit thông tin có dạng: I= (m0,m1,m2,…mk) − Từ mã V xác định dạng: V=(v0, v1, v2, v3, v4, v5,…, vn-1) − Thuật toán mã hóa xác định theo công thức V=I × G(n,k), hay: (v0, v1, v2, v3, v4, v5,…, vn-1)= (m0,m1,m2,…mk)× G(n,k) 1.2.3 Ma trận kiểm tra mã Hamming Ma trận kiểm tra H(n,k) có đặc tính sau: Tích từ mã V với ma trận kiểm tra H(n,k) chuyển vị, cho kết 0, tức là: T V × H (n,k) ≡0 (1.1) T: phép chuyển vị ma trận Với đặc tính ma trận kiểm tra H(n,k) xác định theo ma trận sinh G(n,k) với dạng biểu diễn sau: H ( n ,k ) = [R(Tr ,k ) , E( r ,r) ] (1.2) 1.2.4 Thuật toán giải mã Hamming Ma trận kiểm tra H(n,k) cho phép kiểm tra từ mã có phải từ mã mã xét hay không Đặc biệt thu từ mã, ký hiệu P, kiểm tra từ T mã có mắc lỗi hay không thuật toán S = P × H ( n ,k ) Trong công thức S gọi vector Syndrome, có r ký hiệu Nếu S=0, từ mã P lỗi, ngược lại, S ≠0, từ mã P có lỗi Công thức gọi thuật toán giải mã phát sai Ma trận sau : H (Tn ,k ) biểu diễn theo ma trận thành phần ma trận sinh G(n,k)  R( r , k )  H (Tn,k ) =    E( r ,r )  (1.3) 1.3 Điều chế giải điều chế hệ thống thông tin số Điều chế kỹ thuật gắn tin tức vào sóng mang cao tần, làm cho thông số: tần số, pha, biên độ sóng mang thay đổi theo tín hiệu tin tức Điều chế xem não hệ thống xuất tất hệ thống thông tin Vì vậy, xem xét đánh giá chất lượng hệ thống thông tin, ta tách rời khỏi kỹ thuật điều chế Trong phần đồ án thực đánh giá chất lượng hệ thống thông tin sử dụng loại kỹ thuật điều chế sử dụng không sử dụng mã Hamming để phát sửa lỗi Bởi vậy, phần xem xét kỹ thuật điều chế BPSK, QPSK, – PSK, 16 – PSK 1.3.1 Điều chế BPSK Giả sử có sóng mang biểu diễn: x0 (t ) = A cos(ω0t + ϕ ) (1.4) Biểu thức tín hiệu gốc: s(t) tín hiệu nhị phân(0,1) chuỗi NRZ Ta có: Khi s(t)=1: P(t) = Acos ω0t (1.5) Khi s(t)=0: P (t) = Acos(ω0t +180 ) (1.6) Đối với khóa dịch pha PSK, thông tin chứa pha tức thời sóng mang điều chế Thường pha ấn định so sánh tương thích với sóng mang pha biết PSK kết hợp Đối với PSK nhị phân, trạng thái pha 0 1800 sử dụng Nguyên tắc: Các tín hiệu nhị phân tác dụng lên sóng mang làm thay đổi pha sóng mang Cụ thể là: − Bit 1: pha sóng mang 00 − Bit 0: pha sóng mang 1800 Các giá trị ngược lại nguyên tắc chung có đảo bit pha sóng mang lệch 1800 Bảng chân lý tín hiệu điều chế BPSK Nhị phân đầu vào Pha đầu Logic 1800 Logic 00 Có thể thấy rõ ràng cách biểu diễn đồ thị thời gian trạng thái tín hiệu BPSK (Hình 2.2) Điều chế khóa dịch pha nhị phân BPSK (Hình 2.3): Với n=2, ∆Φ = π , ta có kiểu điều chế 2-PSK hay BPSK: π P(t ) = cos(ω0t + ϕ + s (t ) ) (1.7) Sơ đồ tín hiệu BPSK dạng sin với hai giá trị tùy thuộc giá trị Data: Khi Data bit=1, tín hiệu BPSK pha với sóng mang Khi Data bit=0, tín hiệu BPSK ngược pha với sóng mang Hình 1.3 Khóa dịch pha nhị phân Hình 1.4 Sơ đồ khối thực điều chế PSK Hình 1.5 Quan hệ pha, thời gian đầu điều chế BPSK theo tín hiệu vào Quá trình giải điều chế BPSK Hình 1.6 Phương pháp giải điều chế PSK Giải điều chế BPSK thực theo sơ đồ hình 1.6 Sơ đồ gồm tái lập sóng mang nhân Bộ giải điều chế BPSK bao gồm: − − − − − Sơ đồ lấy bình phương để chuyển tín hiệu khác pha pha Vòng giữ pha PLL phát lại nhịp với tần số gấp đôi tần số mang Bộ dịch pha ∆ để hiệu chỉnh pha Bộ chia hai để đưa tần số tín hiệu tái lập tần số sóng mang Bộ nhân tín tín hiệu thực nhân sóng điều chế BPSK với sóng mang tái lập Giả sử tần số sóng mang f c , ωc = 2π f c , ta có hai trường hợp: Khi tín hiệu BPSK + sin(ωc t ) ứng với data bit = 1, sóng mang tái lập sin(ωc t ) , sơ đồ nhân cho tín hiệu: sin(ωc t )sin(ωct ) = sin (ωc t ) = (1 − cos(2ωc t ) = − cos(2ωc t ) 2 (1.8) Trong biểu thức thành phần thứ hai xoay chiều, có tần số gấp đôi tần số sóng mang Khi sử dụng lọc thông thấp với tần số cắt tần số sóng mang, khử bỏ thành phần xoay chiều dương thành phần chiều thứ giữ lại biểu diễn trạng thái “1” Data bit Khi tín hiệu BPSK − sin(ω ct ) ứng với data bit=0, sơ đồ nhân cho : − sin(ωc t ) sin(ωct ) = − sin (ωct ) = (1 − cos(2ωct ) = − + cos(2ωct ) 2 (1.9) Trong biểu thức thành phần thứ xoay chiều, có tần số gấp đôi tần số sóng mang Khi sử dụng lọc thông thấp với tần số cắt tần số sóng mang, khử bỏ thành phần xoay chiều âm thành phần chiều thứ nhất(-1/2) giữ lại biểu diễn trạng thái “0” data bit Điều chế khóa dịch pha sử dụng rộng rãi hệ thống thông tin quân sự, thương mại, hệ thống vi ba số Phương thức điều chế xem phương thức điều chế hiệu cho ứng dụng truyền tin vô tuyến đảm bảo xác suất lỗi thấp mức tín hiệu thu khẳng định chu kì tín hiệu 1.3.2 Điều chế QPSK PSK pha gọi PSK vuông góc (QPSK : Quadrature PSK) mạch điều chế cho tín hiệu có pha tùy theo trạng thái cặp bit (dibit) liệu vào, độ lệch pha tín hiệu 90° − Mạch chia bit (bit splitter): chuyển dòng liệu vào theo hai ngã I (In-phase) Q (Quadrature) Những bit vào ngã I điều chế sóng mang có pha ban đầu bit vào ngã Q điều chế sóng mang làm lệch pha 90° − Vì liệu vào bit 0, nên tín hiệu ngã mạch nhân I sinωct − sin ωc t ngã Q cosωct − cos ωc t , tín hiệu tổng hợp mạch tổng tín hiệu mô tả (Hình 1.7) Với bit ngã vào ab=01, tín hiệu ngã − sin ωc t + cos ωc t , tín hiệu thay tín hiệu có pha 135° Bảng 1.1: Tín hiệu từ mạch cân Kênh I Q Giá trị nhị phân Hiệu thế + Tín hiệu từ mạch cân bằng sin ωc t - − sin ωc t + - π sin(ωc t + ) = cos ωc t π − sin(ωc t + ) = − cos ωct Hình 1.7 Tín hiệu điều chế pha Hình 1.8 Mạch giải mã PSK – pha Mạch phục hồi sóng mang cho lại sóng mang sinωct từ tín hiệu nhận được, tín hiệu cho thẳng vào mạch nhân ngã I làm lệch pha 90° trước vào mạch nhân ngã Q, tín hiệu mạch nhân đưa vào mạch lọc hạ thông để loại bỏ thành phần tần số cao, thành phần DC tổng hợp mạch tổng lại dòng liệu Giả sử tín hiệu vào tín hiệu nhận thí dụ trên: cosωct - sinωct Tín hiệu mạch nhân ngã I là: sinωct ( cos ωc t − sin ωc t ) = 1/2 sin ωct - 1/2(1- cos 2ωc t ) Tín hiệu sau mạch lọc điện dc -, tương ứng bit Tín hiệu mạch nhân ngã Q là: cos ωc t ( cos ωct − sin ωc t ) = -1/2 sin ωct +1/2(1+ cos 2ωc t ) Tín hiệu sau mạch lọc điện dc+, tương ứng bit 1, Mạch tổ hợp bit cho lại liệu phát : 01 (viết theo thứ tự ab) 1.3.3 Điều chế – PSK PSK - pha mạch điều chế cho tín hiệu có pha tùy thuộc trạng thái tổ hợp bit vào (tribits) Mạch chia bit chia tổ hợp bít theo kênh khác Các bit a b theo kênh I Q xác định cực tính tín hiệu mạch biến đổi từ mức, bit c xác định biên độ điện dc Hình 1.9 Sơ đồ khối mạch điều chế PSK - pha Có biên độ dùng 0,34V 0,821V Khi a b bit ngã mạch biến đổi có trị dương, ngược lại a b bit Biên độ tín hiệu từ mạch biến đổi luôn khác nhau, mạch nhận tín hiệu c (hay tín hiệu có biên độ 0,821 (0,34) mạch nhận tín hiệu đảo lại cho tín hiệu có biên độ 0,34 (0,821)) Vì bit abc độc lập với nên ± 0,821 ± 0,344 luôn giá trị có ngã mạch biến đổi Ở kênh I mạch điều chế sóng mang ban đầu (không làm lệch pha) nên giá trị ngã ± 0,821 cos ωc t ± 0,34 cos ωc t ngã Q giá trị ± 10 − Phần tử OR làm việc nhịp 7, để kết thúc trình mã hóa, hình thành nên từ mã V với ký hiệu Hình 2.1 Mạch điện mã hóa mã Hamming M(7,4) Thuật toán giải mã: Phía thu nhận từ mã P Xét hai trường hợp: Trường hợp 1: Quá trình truyền không phát sinh lỗi, P ≡ V Hay S=0 (với giả thiết lỗi e ≤ ) Trường hợp 2: Quá trình truyền phát sinh lỗi, P ≠ V Với P=(r0,r1,r2,r3,r4,r5,r6), S=(s0,s1,s2) Ta có: S =P ×H (Tn , k ) 110  011    111    =[ r0 , r1 , r2 , r3 , r4 , r5 , r6 ] ×101  =[ s0 , s1 , s2 ] (2.3) 100    010  001    Thực phép nhân ma trận Ta nhận kết quả: s0 = r0 ⊕ r2 ⊕ r3 ⊕ r4 , s1 = r0 ⊕ r1 ⊕ r2 ⊕ r5 , s2 = r1 ⊕ r2 ⊕ r3 ⊕ r6 (2.4) Đây gọi tổng kiểm tra, để xác định phần tử vector S Thay giá trị thu từ phía thu : s0 = ⊕ ⊕ ⊕ = s1 = ⊕ ⊕ ⊕ = s2 = ⊕ ⊕ ⊕ = (2.5) Như vậy, S=0, kết luận P không mắc lỗi Giả sử S ≠ 0: 14 s0 = ⊕ ⊕ ⊕ = s1 = ⊕ ⊕ ⊕ = s2 = ⊕ ⊕ ⊕ = (2.6) Trường hợp này: S = (011) ≠ , dẫn đến kết luận P mắc lỗi − Vì s0=0 giả thiết P mắc lỗi, nên khẳng định ký hiệu tham gia vào tổng không mắc lỗi ; tức r0,r2,r3,r4 không mắc lỗi − Vì s1=1 giả thiết P mắc lỗi, khẳng định ký hiệu tham gia vào tổng mắc lỗi Kết hợp với kết luần trên, dẫn đến r r5 bị mắc lỗi − Vì s2=1 giả thiết P mắc lỗi, khẳng định ký hiệu tham gia vào tổng mắc lỗi Kết hợp với kết luận trên, dẫn đến r r6 bị mắc lỗi − Kết hợp hai kết luận cuối, với giả thiết P mắc lỗi, dẫn đến kết luận phần tử mắc lỗi r1, điều hoàn toàn hợp lý với giả thiết ban đầu Khi thu có lỗi người ta thường sử dụng ký hiệu : P =V +e (2.7) Trong e vector lỗi e=(0100000) Bảng 2.1 Mối quan hệ S e Vector lỗi e 1000000 0100000 0010000 0001000 Vector Syndrome S=(s0s1s2) 110 011 111 101 Vector S hệ 10 0000100 100 0000010 010 0000001 001 0000000 000 Mạch điện giải mã: Mạch điện giải mã xây dựng dựa thuật toán giải mã Xây dựng mạch điện giải mã cho mã M(7,4) (Hình 2.2) Mạch điện giải mã bao gồm phần tử: − Mạch tính Syndrome, gồm cộng mod2, để tính (s 0,s1,s2) Các đầu vào XOR vẽ dựa thuật toán giải mã − Mạch chuyển đổi (giải mã) vector S từ mã hệ sang hệ 10, đưa mức logic cao “1” đầu tương ứng với số hệ 10; đầu lại có mức logic Mạch điện gọi mạch tạo ký hiệu sửa sai − Mạch điện chứa dấu sửa sai (được đánh số từ đến 3) Phần tử r i mắc lỗi, ô ghi dịch có ghi số tương ứng nạp mức logic 1, ô lại nạp mức logic 15 − Mạch sửa lỗi XOR, ký hiệu M Ký hiệu thu r i mắc lỗi, sửa nhờ phép cộng mod2: ri* ⊕ = ri (ở ri để sửa sai), nhịp tương ứng Các ký hiệu rj lại không mắc lỗi, không bị ảnh hưởng phép cộng mod2 này: rj ⊕ ≡ rj − Mạch điện giải mã cần làm việc 11 nhịp, nhịp đầu để đưa ký hiệu thu vào ghi đệm, tính Syndrome, chuyển mã hệ sang mã hệ 10, nhịp để sữa lỗi Ở đầu vector P sữa lỗi Hình 2.2 Mạch điện giải mã mã Hamming M(7,4) 2.2 Mô phỏng, đánh giá chất lượng thông tin số 2.2.1 So sánh chất lượng hệ thống sử dụng mã Hamming với phương thức điều chế khác Bài toán 1: Cho N=720000 bít truyền kênh AWGN, sử dụng mã Hamming (7,4) Đánh giá chất lượng hệ thống thay đổi phương thức điều chế BPSK, Q-PSK, 8-PSK, 16-PSK Xây dựng chương trình: Bước 1: Tạo 720000 bit tin ngẫu nhiên Bước 2: Tạo ma trận sinh G(7,4), ma trận kiểm tra H, ma trận sửa lỗi E Bước 3: Chuyển bit tin mảng chiều thành từ mã có độ dài bit, sau tiến hành mã hóa thành từ mã để truyền đi: V=I × G(7,4) Bước 4: Điều chế 8-PSK: Tạo bit tin thành symbol 3bit, tiến hành điều chế Tạo nhiễu AWGN kênh truyền, sau tiến hành giải điều chế BPSK Tương tự với kỹ thuật điều chế BPSK, QPSK,16PSK Bước 5: Tách symbol thành bit tin Chuyển dạng từ mã 7bit Bước 6: Tính vector Sydrome, tham chiếu vector Sydrome vào vector sửa lỗi E Tiến hành sửa lỗi Bước 7: Tách từ mã nhận thành bit tin Bước 8: Tính toán lỗi thông qua bit tin nhận so với bit tin phát 16 Chương trình mô toán cho phụ lục Kết mô thể hình 2.3 Hình 2.3 BER Eb/No với BPSK, QPSK, 8PSK,16PSK sử dụng mã Hamming Từ kết trên, ta thấy: − Khi sử dụng kỹ thuật mã Hamming không sử dụng kỹ thuật mã Hamming ta thấy đường cong BER BPSK QPSK trùng tức hai có xác suất BER Điều giải thích QPSK xem điều chế bậc BPSK BPSK dễ Ở QPSK bit chẵn (hoặc lẻ) sử dụng để điều chỉnh thành phần pha của các sóng mang Khi các bit lẻ hoắc chẵn được sử dụng để điều chỉnh các pha thành phần, hay nói cách khác QPSK BPSK được sử dụng sóng mang độc lập Do đó tỉ lệ BER là cho cả hai mô phỏng − Có thể kết luận rằng kỹ thuật mã hóa mã Hamming với BPSK là kỹ thuật điều chế tốt nhất cho tỉ lệ Ber thấp nhất cho tất cả các mô phỏng Kỹ thuật điều chế 16 – PSK cho xác suất lỗi bit lớn − Khi số mức điều chế tăng, khoảng cách chòm gần nên kéo theo tỷ lệ lỗi bit BER tăng Bài toán 2: Cho N=720000 bít truyền kênh AWGN, không sử dụng mã Hamming (7,4) Đánh giá chất lượng hệ thống thay đổi phương thức điều chế BPSK, Q-PSK, 8-PSK, 16-PSK Xây dựng chương trình: Bước 1: Tạo 720000 bit tin ngẫu nhiên Bước 2: Điều chế QPSK.Tạo bit tin thành symbol 2bit, tiến hành điều chế Tạo nhiễu AWGN kênh truyền, sau tiến hành giải điều chế BPSK Bước 3: Tách symbol thành bit tin Bước 4: Tính toán lỗi thông qua bit tin nhận so với bit tin phát 17 Kết mô thể hình 2.4 Hình 2.4 BER Eb/No với BPSK, QPSK, 8PSK, 16 PSK không sử dụng mã hóa Hamming Chương trình mô toán cho phụ lục Từ kết trên, ta thấy: − Có thể kết luận rằng với điều chế BPSK là kỹ thuật điều chế tốt nhất cho tỉ lệ Ber thấp nhất cho tất cả các mô phỏng Kỹ thuật điều chế 16 – PSK cho xác suất lỗi bit lớn − Vì nhiễu ngẫu nhiên nên với giá trị bit tin làm số bit lỗi khác dẫn đến xác xuất lỗi bit khác − Trong đồ thị hình ta thấy: Nếu tỉ số Eb/No tăng => xác xuất lỗi thấp Bài toán 3: Mô kỹ thuật điều chế BPSK, QPSK,8PSK,16PSK theo lý thuyết Chương trình mô cho phụ lục Hình 2.5 Kết mô theo lý thuyết Từ kết trên, ta thấy: 18 − Kết mô sát với kết theo lý thuyết Tuy nhiên có sai khác bit tin đưa vào ban đầu hàm ngẫu nhiên rời rạc nên dẫn đến kết BER có sai khác so với lý thuyết 2.2.2 Đánh giá chất lượng hệ thống Eb lượng 1bit, tích công suất tín hiệu S với độ rộng thời gian 1bit(Tb) Eb=S.Tb [dB] (2.8) N0 mật độ phổ công suất phía tạp âm AWGN Hay mật độ phổ công suất nhiễu: N0= Công suất nhiễu(N)/Băng thông(W), hay: N0 = N W (2.9) Eb/N0 Là phiên chuẩn hóa SNR Trong hệ thống analog Tín hiệu liên tục theo thời gian có lượng không xác định (không xác định tín hiệu khoảng thời gian đấy) Tuy nhiên công suất lại xác định Vì vậy, ta đánh giá theo công suất( SNR) không đánh giá theo lượng(Eb/N0) Trong hệ thống digital, tín hiệu xác định khoảng thời gian, 1bit, 1symbol, 1window… khoảng thời gian công suất giá trị Vì vậy, ta phải dùng lượng để đánh giá(Eb/N0) Hiệu phổ điều chế nhiều mức tăng, nên ta tăng tốc độ bit lối vào độ rộng băng cấp phát(quy định sẵn nhà cung cấp) Đầu vào, tốc độ bit tăng lên k lần, nghĩa độ rộng bit giảm k lần, k bit symbol có độ rộng Tb_cũ, tốc độ bit R_mới=k.R_cũ Bề rộng phổ chiếm lại bề rộng phổ chiếm cũ W_mới=1/Tb_cũ=W_cũ Dẫn đến, tăng hiệu sử dụng phổ, đánh giá công thức nhê – ta =R[b/s]/W[Hz], hiệu phổ 1Hz ta truyền tốc độ bit/s Khi ghép kbit tin thành 1symbol, W=1/k.Tb Hệ số nhê – ta = 1 / =k Tb k Tb Dẫn đến truyền tốc độ bit lớn độ rộng băng thông cho trước Mặt khác,1bit có độ rộng thời gian Tb, ghép kbit=1symbol Ts=kTb Tốc độ symbol lúc Rs=1/Ts [bau] Khi đó: Tốc độ bit Rb=k.bit/Ts=(k.bit)/(k.Tb)=1/Tb (b/s) →Tốc độ bit truyền băng thông không thay đổi Vậy, tăng số mức điều chế →E b/N0 (tại lỗi BER quy định cho hệ thống )→ tăng hiệu sử dụng phổ(giảm băng thông) đạt với độ rộng băng thông cho trước B[Hz] 19 Dung lượng(C) kênh tốc độ bit tối đa mà hệ thống truyền với xác suất lỗi tiến Được thể định lý Shannon C=Blog2(1+S/N) [b/s] (2.10) Trong đó: C: Dung lượng kênh [b/s] B: Băng thông [Hz] S: Công suất tín hiệu [W] N:Công suất nhiễu[W] Vậy kết luận hệ thống đạt tới ngưỡng dung lượng, giá trị BER không thay đổi kể tăng công suất phát gọi giới hạn Shannon Nhận xét: − Phương pháp BBSK cho tỉ lệ lỗi bit nhỏ nhất, phương pháp 16-PSK có tỉ lệ lỗi bit lớn nhất − Khi tăng Eb/N0 phương pháp điều chế, ta thấy tỉ lệ lỗi bit (BER) giảm giảm dần đến giá trị, tỉ lệ lỗi bit BER xác tăng lượng bit − Khi số mức điều chế tăng, thì khoảng cách Hamming giữa các symbol giảm, dẫn đến tỉ lệ lỗi bit tăng − Như hiệu việc mã hóa đã phát hiện và sửa được lỗi 20 KẾT LUẬN Sau khoảng thời gian nghiên cứu, tìm hiểu đồ án viễn thông, đề tài “Mô phỏng, đánh giá chất lượng hệ thống truyền tin số sử dụng mã Hamming với phương thức điều chế khác nhau” hoàn thành Kết quả đạt được: − Xét giá trị Eb/No(dB) tin mã hóa mã Hamming (7,4) có xác suất lỗi bit thấp so với tin không mã hóa − Khi truyền tin theo kênh liên lạc có nhiễu, có phần lượng thông tin bị mát kênh, số liệu thu phát sinh lỗi Nếu số lượng lỗi có giá trị nhỏ, chúng phát sinh với tần số cho phép, sử dụng kĩ thuật mã hóa mã Hamming để chống nhiễu Hạn chế: − Trong mã Hamming M(7,4), trình mã hóa giải mã số bit bị lỗi, toán này, vector sửa lỗi E cho sửa lỗi, từ hai lỗi bit trở lên không sửa (xét khung bit) − Trong thực tế tồn xác xuất lỗi không phát được, loại mã hoàn thiện tất mà mức tương đối chấp nhận Việc nghiên cứu giúp em hiểu thêm nhiều kiến thức kỹ thuật mã hóa giải mã bit thông tin, xử lý toán cho trường hợp cụ thể cộng cụ phần mềm Matlab cách sinh động Mặc dù cố gắng vào việc thực đồ án sai sót trình thực em xin nhận lời góp ý bổ sung cho đồ án hoàn thiện Em xin chân thành cảm ơn ! 21 Phụ lục Bài toán 1: Cho N=720000 bít truyền kênh AWGN, sử dụng mã Hamming (7,4) Đánh giá chất lượng hệ thống thay đổi phương thức điều chế BPSK, Q-PSK, 8-PSK, 16-PSK %=================================================== clear all close all clc; N=input('Nhap vao so bit N chia het cho 3(8psk,24000)='); SNR = 0:1:10; tinphat=randint(1,N); G=[ 1 0 0110100 1110010 1 0 1]; H=[ 0 1 0101110 0 1 1]; E=[ 0 0 0 0010000 0100000 0000100 1000000 0000001 0001000 0 0 0]; B=reshape(tinphat,4,[])'; x1=mod(B*G,2); dieuche=pskmod(x1,2); for i = 1:length(SNR) Y = real(dieuche); awgnbits = awgn(Y,SNR(i)+0.5); Giai_dieuche=pskdemod(awgnbits,2); s=mod(Giai_dieuche*H',2); v=bi2de(s,'left-msb'); y1=mod(Giai_dieuche+E(v+1,:),2); y2=y1(:,4:7); 22 c=reshape(y2',1,[]); loi=sum(mod(tinphat+c,2)) error1(1,i)=loi; BER1(1,i)=error1(1,i)/N; end %======================================================= t=reshape(x1',1,[]); h=reshape(t,3,[])'; h1=bi2de(h,'left-msb'); dieu_che=pskmod(h1,8); for i=1:length(SNR) nhieu= awgn(dieu_che,SNR(i)+6); sau_dieuche=pskdemod(nhieu,8); ybit=dec2bin(sau_dieuche); for ii=1:3 bit_thu(:,ii)=str2num(ybit(:,ii)); end t2=reshape(bit_thu',1,[]); h2=reshape(t2,7,[])'; s1=mod(h2*H',2); v2=bi2de(s1,'left-msb'); sua_loi=mod(h2+E(v2+1,:),2); tach_tin=sua_loi(:,4:7); tu_mathu=reshape(tach_tin',1,[]); loi2=sum(mod(tinphat+tu_mathu,2)) error2(1,i)=loi2; BER2(1,i)=error2(1,i)/N; end %======================================================= t=reshape(x1',1,[]); h=reshape(t,4,[])'; h1=bi2de(h,'left-msb'); dieu_che=pskmod(h1,16); for i=1:length(SNR) nhieu= awgn(dieu_che,SNR(i)+8); sau_dieuche=pskdemod(nhieu,16); ybit=dec2bin(sau_dieuche); 23 for ii=1:4 bit_thu2(:,ii)=str2num(ybit(:,ii)); end t2=reshape(bit_thu2',1,[]); h2=reshape(t2,7,[])'; s1=mod(h2*H',2); v2=bi2de(s1,'left-msb'); sua_loi=mod(h2+E(v2+1,:),2); tach_tin=sua_loi(:,4:7); tu_mathu=reshape(tach_tin',1,[]); loi2=sum(mod(tinphat+tu_mathu,2)) error2(1,i)=loi2; BER3(1,i)=error2(1,i)/N; end %======================================================= semilogy(SNR,BER1,':ko',SNR,BER1,'b-',SNR, BER2,':r*',SNR, BER3,'g') title('do thi'); xlabel('Eb/No(dB)') ylabel('BER') legend('BPSK-HAMMING','QPSK-HAMMING','8PSK-HAMMING','16PSKHAMMING') grid on Phụ lục Bài toán 2: Cho N=720000 bít truyền kênh AWGN, không sử dụng mã Hamming (7,4) Đánh giá chất lượng hệ thống thay đổi phương thức điều chế BPSK, Q-PSK, 8-PSK, 16-PSK %===================================================== clear all close all clc N=input('Nhap vao so bit N bit='); tinphat=randint(1,N); %========================================== EbN0=0:1:10; x=pskmod(tinphat,2); 24 for j=1:length(EbN0) Y=real(x); y=awgn(Y,EbN0(j)+3,'measured'); y=pskdemod(y,2); nerr=symerr(tinphat,y); ber2(j)=nerr/N; end %========================================== h=reshape(tinphat,3,[])'; h1=bi2de(h,'left-msb'); x=pskmod(h1,8); for j=1:length(EbN0) y=awgn(x,EbN0(j)+6,'measured'); y=pskdemod(y,8); ybit=dec2bin(y); for ii=1:3 bit_thu(:,ii)=str2num(ybit(:,ii)); end t2=reshape(bit_thu',1,[]); nerr=symerr(tinphat,t2); ber8(j)=nerr/N; end %========================================== h=reshape(tinphat,4,[])'; h1=bi2de(h,'left-msb'); x=pskmod(h1,16); for j=1:length(EbN0) y=awgn(x,EbN0(j)+8,'measured'); y=pskdemod(y,16); ybit=dec2bin(y); for ii=1:4 bit_thu16(:,ii)=str2num(ybit(:,ii)); end t2=reshape(bit_thu16',1,[]); nerr=symerr(tinphat,t2); ber16(j)=nerr/N; end 25 semilogy(EbN0,ber2,':ko',EbN0,ber2,'b-',EbN0,ber8,':r*',EbN0,ber16,'g') title('do thi'); xlabel('Eb/No(dB)') ylabel('BER') legend('BER BPSK','BER QPSK','BER 8-PSK','BER 16-PSK') grid on Phụ lục clear all; clc; EbNo=0:1:10; for i=1:length(EbNo) BERtheory2(i) = berawgn(EbNo(i),'psk',2,'nondiff') BERtheory4(i) = berawgn(EbNo(i),'psk',4,'nondiff') BERtheory8(i) = berawgn(EbNo(i),'psk',8,'nondiff'); BERtheory16(i) = berawgn(EbNo(i),'psk',16,'nondiff'); end %======================================================= semilogy(EbNo,BERtheory2,':ko',EbNo,BERtheory4,'b-',EbNo,BERtheory8,':r*',EbNo ,BERtheory16,'g') title('do thi'); grid on; xlabel('Eb/No(dB)') ylabel('BER') legend('BPSK ly thuyet','QPSK ly thuyet','8-PSK ly thuyet','16-PSK ly thuyet') 26 TÀI LIỆU THAM KHẢO Cơ sở lý thuyết truyền tin – Nguyễn Văn Hậu – Nguyễn Hiếu Minh.NXB Khoa học kỹ thuật Kỹ thuật thông tin số Khoa Điện tử truyền thông – Trường đại học Vinh http://www.dientuvietnam.net/ 27 MỤC LỤC Lời mở đầu Phần 1: MÃ HÓA HAMMING SỬ DỤNG TRONG TRUYỀN TIN SỐ 1.1 Tổng quan mã hóa kênh 1.1.1 Khái niệm chung .2 1.1.2 Phân loại mã hóa kênh 1.2 Mã Hamming 1.2.1 Giới thiệu 1.2.2 Thuật toán mã hóa mã Hamming 1.2.3 Ma trận kiểm tra mã Hamming 1.2.4 Thuật toán giải mã Hamming 1.3 Điều chế giải điều chế hệ thống thông tin số 1.3.1 Điều chế BPSK 1.3.2 Điều chế QPSK 1.3.3 Điều chế – PSK 10 1.3.4 Điều chế 16 – PSK 11 1.4 Kênh truyền AWGN 11 1.5 Tỷ lệ lỗi bit BER 11 Phần 2: MÔ PHỎNG, ĐÁNH GIÁ CHẤT LƯỢNG HỆ THỐNG TRUYỀN TIN SỐ SỬ DỤNG MÃ HAMMING VỚI CÁC PHƯƠNG THỨC ĐIỀU CHẾ KHÁC NHAU .13 2.1 Sử dụng mã Hamming M(7,4) cho trình mã hóa giải mã .13 2.2 Mô phỏng, đánh giá chất lượng thông tin số 16 2.2.1 So sánh chất lượng hệ thống sử dụng mã Hamming với phương thức điều chế khác .16 KẾT LUẬN .21 Phụ lục 22 Phụ lục 24 Phụ lục 26 28 [...]... PHƯƠNG THỨC ĐIỀU CHẾ KHÁC NHAU Trong phần này, thực hiện mô phỏng đánh giá chất lượng hệ thống truyền tin số trong trường hợp sử dụng và không sử dụng mã Hamming với các phương thức điều chế Mặt khác, đề tài cũng đánh giá hệ thống sử dụng mã Hamming với các phương thức điều chế khác nhau BPSK, QPSK, 8 – PSK, 16 – PSK Từ mối quan hệ giữa tỷ số Eb/N0 và xác suất lỗi cho phép lựa chọn phương thức điều chế. .. 1.3.4 Điều chế 16 – PSK 11 1.4 Kênh truyền AWGN 11 1.5 Tỷ lệ lỗi bit BER 11 Phần 2: MÔ PHỎNG, ĐÁNH GIÁ CHẤT LƯỢNG HỆ THỐNG TRUYỀN TIN SỐ SỬ DỤNG MÃ HAMMING VỚI CÁC PHƯƠNG THỨC ĐIỀU CHẾ KHÁC NHAU .13 2.1 Sử dụng mã Hamming M(7,4) cho quá trình mã hóa và giải mã .13 2.2 Mô phỏng, đánh giá chất lượng thông tin số 16 2.2.1 So sánh chất lượng. .. điện giải mã cần làm việc trong 11 nhịp, trong đó 7 nhịp đầu để đưa các ký hiệu thu vào thanh ghi đệm, tính Syndrome, chuyển mã hệ 2 sang mã hệ 10, 4 nhịp tiếp theo để sữa lỗi Ở đầu ra là vector P đã sữa lỗi Hình 2.2 Mạch điện giải mã của mã Hamming M(7,4) 2.2 Mô phỏng, đánh giá chất lượng thông tin số 2.2.1 So sánh chất lượng hệ thống sử dụng mã Hamming với các phương thức điều chế khác nhau Bài toán... rồi truyền trên kênh Sau khi truyền mỗi gói, ta thu thông tin, giải mã rồi so sánh nó với gói dữ liệu trước khi truyền và đếm số lỗi xảy ra khi truyền gói tin đó Giả sử rằng ta truyền N gói tin mỗi gói tin có độ dài K bits, tổng số lỗi mà phần mềm đếm được sau khi truyền gói N đó là M thì BER là: BER= M/(N*K) 12 Phần 2: MÔ PHỎNG, ĐÁNH GIÁ CHẤT LƯỢNG HỆ THỐNG TRUYỀN TIN SỐ SỬ DỤNG MÃ HAMMING VỚI CÁC PHƯƠNG... AWGN, không sử dụng mã Hamming (7,4) Đánh giá chất lượng hệ thống khi lần lượt thay đổi các phương thức điều chế là BPSK, Q-PSK, 8-PSK, 16-PSK Xây dựng chương trình: Bước 1: Tạo 720000 bit tin ngẫu nhiên Bước 2: Điều chế QPSK.Tạo các bit tin thành các symbol 2bit, tiến hành điều chế Tạo nhiễu AWGN trên kênh truyền, sau đó tiến hành giải điều chế BPSK Bước 3: Tách các symbol thành các bit tin Bước 4:... năng lượng mỗi bit − Khi số mức điều chế tăng, thì khoảng cách Hamming giữa các symbol giảm, dẫn đến tỉ lệ lỗi bit tăng − Như vậy hiệu quả của việc mã hóa đã phát hiện và sửa được lỗi 20 KẾT LUẬN Sau khoảng thời gian nghiên cứu, tìm hiểu trong đồ án viễn thông, về đề tài Mô phỏng, đánh giá chất lượng hệ thống truyền tin số sử dụng mã Hamming với các phương thức điều chế khác nhau ... bít truyền trên các kênh AWGN, sử dụng mã Hamming (7,4) Đánh giá chất lượng hệ thống khi lần lượt thay đổi các phương thức điều chế là BPSK, Q-PSK, 8-PSK, 16-PSK Xây dựng chương trình: Bước 1: Tạo 720000 bit tin ngẫu nhiên Bước 2: Tạo ma trận sinh G(7,4), ma trận kiểm tra H, ma trận sửa lỗi E Bước 3: Chuyển các bit tin là mảng 1 chiều thành các từ mã có độ dài 4 bit, sau đó tiến hành mã hóa thành các. .. 3 1.2 Mã Hamming 3 1.2.1 Giới thiệu 3 1.2.2 Thuật toán mã hóa mã Hamming 5 1.2.3 Ma trận kiểm tra mã Hamming 5 1.2.4 Thuật toán giải mã Hamming 5 1.3 Điều chế và giải điều chế trong hệ thống thông tin số 6 1.3.1 Điều chế BPSK 6 1.3.2 Điều chế QPSK 8 1.3.3 Điều chế 8 – PSK ... cùng một giá trị của Eb/No(dB) thì bản tin được mã hóa bằng mã Hamming (7,4) có xác suất lỗi bit sẽ thấp hơn so với bản tin không mã hóa − Khi truyền tin theo kênh liên lạc có nhiễu, thì có một phần lượng thông tin sẽ bị mất mát trên kênh, vì thế trong số liệu thu về sẽ phát sinh lỗi Nếu số lượng lỗi như thế có giá trị nhỏ, hoặc chúng phát sinh với tần số cho phép, thì sử dụng kĩ thuật mã hóa mã Hamming. .. Bước 7: Tách từ mã nhận được thành các bit tin Bước 8: Tính toán lỗi thông qua bit tin nhận được so với các bit tin phát đi 16 Chương trình mô phỏng của bài toán này được cho trong phụ lục 1 Kết quả mô phỏng thể hiện trên hình 2.3 Hình 2.3 BER và Eb/No với BPSK, QPSK, 8PSK,16PSK khi sử dụng mã Hamming Từ kết quả trên, ta thấy: − Khi sử dụng kỹ thuật mã Hamming và không sử dụng kỹ thuật mã Hamming thì ta ... 2: MÔ PHỎNG, ĐÁNH GIÁ CHẤT LƯỢNG HỆ THỐNG TRUYỀN TIN SỐ SỬ DỤNG MÃ HAMMING VỚI CÁC PHƯƠNG THỨC ĐIỀU CHẾ KHÁC NHAU Trong phần này, thực mô đánh giá chất lượng hệ thống truyền tin số trường hợp sử. .. 2: MÔ PHỎNG, ĐÁNH GIÁ CHẤT LƯỢNG HỆ THỐNG TRUYỀN TIN SỐ SỬ DỤNG MÃ HAMMING VỚI CÁC PHƯƠNG THỨC ĐIỀU CHẾ KHÁC NHAU .13 2.1 Sử dụng mã Hamming M(7,4) cho trình mã hóa giải mã .13 2.2 Mô phỏng,. .. sử dụng không sử dụng mã Hamming với phương thức điều chế Mặt khác, đề tài đánh giá hệ thống sử dụng mã Hamming với phương thức điều chế khác BPSK, QPSK, – PSK, 16 – PSK Từ mối quan hệ tỷ số

Ngày đăng: 03/12/2015, 23:03

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w