mã phát hiện và sữa lỗi

17 1.7K 6
mã phát hiện và sữa lỗi

Đ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

Đồ án môn học Truyền dẫn vô tuyến LỜI MỞ ĐẦU Cùng với sự phát triển của Khoa học – Công Nghệ của thế giới, nước ta đã đang áp dụng ngày càng nhều các thành tựu của Khoa học – Công Nghệ vào trong các lĩnh vực kinh tế, khoa học, xã hội đời sống…nói chung trong ngành viễn thông nói riêng. Trong cuộc sống hàng ngày thông tin liên lạc đóng một vai trò rất quan trọng không thể thiếu. Nó quyết định nhiều mặt hoạt động của xã hội, giúp con người nắm bắt nhanh chóng các thông tin, các giá trị văn hoá, kinh tế, khoa học kỹ thuật rất đa dạng phong phú.Với nhu cầu cả về số lượng chất lượng của khách hàng sử dụng các dịch vụ viễn thông ngày càng cao, đòi hỏi phải có những phương tiện thông tin hiện đại nhằm đáp ứng các nhu cầu đa dạng của khách hàng “mọi lúc, mọi nơi” họ cần.Thông tin di động ngày nay đã trở thành một dịch vụ kinh doanh không thể thiếu được của tất cả các nhà khai thác viễn thông trên thế giới. Đối với các khách hàng viễn thông, nhất là các nhà doanh nghiệp thì thông tin di động trở thành phương tiện liên lạc quen thuộc không thể thiếu. Với sự đa dạng về các loại hình kết nối yêu cầu của mạng thông tin rộng khắp thì việc thiết kế, thi công lắp đặt các mạng truyền dẫn đòi hỏi phải mềm dẻo phù hợp với yêu cầu của khách hàng. Chính vì thế, việc phát triển mạng truyền dẫn vô tuyến là đương nhiên rất cần thiết. Với Truyền Dẫn Vô Tuyến, chúng ta có thể khắc phục được sự hạn chế về mặt địa lý, đồng thời thúc đẩy sự phát triển của các dịch vụ thông tin vô tuyến, nhất là trong thông tin di động. Do vậy, việc lựa chọn sản phẩm phụ thuộc rất nhiều vào nhà cung cấp sản phẩm. Đồng thời, viêc đào tạo đội ngũ cán bộ kỹ thuật, công nhân viên phụ vụ cho việc vận hành, khai thác bảo trì cũng là vấn đề cấp thiết. SVTH: Nguyễn Mùi 1 Đồ án môn học Truyền dẫn vô tuyến MỤC LỤC LỜI MỞ ĐẦU 1 MỤC LỤC 2 CHƯƠNG 1: GIỚI THIỆU CHUNG 3 1.1. LỊCH SỬ PHÁT TRIỂN 3 CHƯƠNG 2: LỔI THƯỜNG GẶP TRONG TRUYỀN DẪN 5 VÔ TUYẾN 5 2.1. ĐỊNH NGHĨA BIT LỔI BIT 5 2.2. BỘ PHÁT HIỆN LỔI 5 2.3 PHÂN LOẠI 6 2.4 MỘT SỐ LOẠI PHÁT HIỆN SỮA LỔI 6 CHƯƠNG 3: MỘT SỐ LOẠI PHÁT HIỆN SỮA LỔI TRONG TRUYỀN DẪN VÔ TUYẾN 7 3.1. HAMMING 7 3.2. KIỂM TRA CHẴNN LẺ (Paruty Check) 8 3.2.1. Dùng kiểm tra chẵn lẻ để dò ra một bit sai 8 3.2.2.Dùng kiểm tra chẵn lẻ để dò sai hai bit 9 3.2.3.Dùng kiểm tra chẵn lẻ để dò ra một chuỗi bit sai 9 3.2.4.Kiểm tra khối 10 3.3. KIỂM TRA THEO CHIỀU DỌC(Longitudinal Redundancy Check or Checksum) 11 3.4. KIỂM TRA PHẦN DƯ 12 3.4.1. Xác định CRC dùng thuật toán Mod-2 12 3.4.2. Dùng phép biểu diễn đa thức 14 TÀI LIỆU THAM KHẢO 17 SVTH: Nguyễn Mùi 2 Đồ án môn học Truyền dẫn vô tuyến CHƯƠNG 1: GIỚI THIỆU CHUNG 1.1. LỊCH SỬ PHÁT TRIỂN Viễn thông là một thuật ngữ liên quan tới việc truyền tin tín hiệu. Ngay từ ngày xa xưa, những người tiền sử đã biết dùng khói để báo hiệu, những người thổ dân ở những hòn đảo xa xôi dùng các cột khói để liên lạc, báo hiệu truyền tin. Mai An Tiêm dùng dưa hấu để truyền tin về đất liền, có thể nói thuật ngữ viễn thông đã có từ xa xưa. Tuy nhiên có thể nói, khái niệm viễn thông được chính thức sử dụng khi cha đẻ của máy điện báo Samuel Finley Breese Morse sau bao ngày đêm nghiên cứu vất vả, ông đã sáng chế chiếc máy điện báo đầu tiên. Bức điện báo đầu tiên dùng Morse được truyền đi trên trái đất từ Nhà Quốc Hội Mỹ tới Baltimore cách đó 64 km đã đánh dấu kỷ nguyên mới của viễn thông. Trong bức thông điệp đầu tiên này Morse đã viết "Thượng Đế sáng tạo nên những kỳ tích". Nói đến lịch sử của Viễn thông, không thể không nhắc đến Alexader Graham Bell, ông là người đầu tiên sáng chế ra điện thoại. Để tưởng nhớ ông, ngày 7 tháng 8 năm 1922 mọi máy điện thoại trên nước Mỹ đều ngừng hoạt động để tưởng nhớ bày tỏ lòng biết ơn nhà khoa học xuất sắc A.G Bell (1847 - 1922). Trên quy mô xã hội, nếu điện tín (1884), điện thoại (1876), radio (1895) vô tuyến truyền hình (1925) đã làm thay đổi cách giao tiếp trong quan hệ con người thì sự xuất hiện của vệ tinh viễn thông (1960) sợi quang học (1977), công nghệ không dây đã làm nên một hệ thần kinh thông minh nhạy bén trên trái đất. Có thể nói lĩnh vực viễn thông đã làm thay đổi bộ mặt, tính cách của trái đất, đã hiện thực hóa khả năng liên kết của mỗi người của mỗi quốc gia, gắn kết mọi người với nhau nhờ một mạng lưới viễn thông vô hình hữu hình trên khắp trái đất vũ trụ. Sự hội tụ trong lĩnh vực viễn thông Chữ xiên Cùng với sự phát triển của xã hội, nhu cầu sử dụng truyền dữ liệu của con người cũng tăng lên theo hàm số mũ. Ngành VT đóng góp vai trò lớn lao trong việc vận chuyển đưa tri thức của loài người đến mỗi người, thúc đẩy quá trình sáng tạo đưa thông tin khắp nơi về các ngành lĩnh vực khoa học, các thông tin giải trí cũng như thời sự khác. Viễn thông đem lại sự hội tụ, hay sự thống nhất về các loại hình dịch vụ truyền dữ liệu dịch vụ như thoại, video (truyền hình quảng bá truyền hình theo yêu cầu), dữ liệu Internet băng rộng thúc đẩy ngành công nghệ thông tin phát triển lên một mức cao hơn với đa dạng các loại hình dịch vụ chi phí rẻ hơn. Mạng viễn thông giúp người sử dụng có thể gọi điện SVTH: Nguyễn Mùi 3 Đồ án môn học Truyền dẫn vô tuyến thoại qua mạng Internet, có thể xem hình ảnh của bạn bè trên khắp thế giới, có thể chia sẻ nguồn dữ liệu, có thể thực hiện những giao dịch mua bán tới mọi nơi trên thế giới một cách đơn giản. Viễn thông ngày càng tạo nên một thế giới gần hơn hội tụ cho tất cả mọi người SVTH: Nguyễn Mùi 4 Đồ án môn học Truyền dẫn vô tuyến CHƯƠNG 2: LỔI THƯỜNG GẶP TRONG TRUYỀN DẪN VÔ TUYẾN 2.1. ĐỊNH NGHĨA BIT LỔI BIT - Bit là đơn vị lưu trữ thông tin cơ bản nhất trên tất cả các thiết bị số. Mỗi bít chỉ có thể lưu trữ một trong hai giá trị 0 hoặc 1. - Lỗi bit xuất hiện khi giá trị đáng là 0 thì lại là 1 ngược lại. Lỗi bit có thể xảy ra trong bất kỳ thao tác truyền dữ liệu nào đó. Đó là trường hợp bị lổi trên đường truyền. Ví dụ như trong thao tác upload một file, có ít nhất 3 pha truyền dữ liệu có chứa đựng rủi ro lỗi bit như sau: Pha 1.Đọc file tại máy trạm: dữ liệu đi từ thiết bị lưu trữ vào bộ nhớ Pha 2.Dữ liệu truyền từ máy trạm đến máy chủ thông qua kết nối mạng Pha 3.Lưu file tại máy chủ: dữ liệu chuyển từ bộ nhớ vào thiết bị lưu trữ. Riêng trong Pha 1 nói trên, nếu phân tích kỹ ra thì nó cũng bao gồm nhiều bước truyền dữ liệu. (Giả sử đọc từ đĩa cứng thì dữ liệu sẽ lần lượt chuyển từ bề mặt lưu trữ qua đầu từ, qua cache của HDC-Hard Disk Controller, qua ATA cable, qua Chipset, qua bus, RAM). Lỗi bit cũng có thể xuất hiện trong trạng thái dữ liệu tĩnh, đó là trường hợp dữ liệu bị thay đổi ngay trên thiết bị lưu trữ do thời gian hoặc do các tác động của môi trường. Mọi thiết bị lưu trữ cũng như giao thức truyền dẫn đều có công bố tỷ lệ tần suất lỗi dữ liệu như là một chỉ tiêu kỹ thuật bắt buộc. Các thiết bị giao thức đều có cơ chế tự kiểm tra sửa lỗi bên trong nên số lượng lỗi có thể ghi nhận từ bên ngoài là rất ít. Tỉ lệ này thường rất nhỏ, chỉ là 1 phần vài chục tới vài trăm tỷ nhưng các bạn nên nhớ rằng cho dù rất rất nhỏ nhưng nó không bao giờ bằng 0. Trong thực tế tỉ lệ lỗi dữ liệu này có khác biệt, ví dụ đối với đĩa cứng, tỉ lệ lỗi được thống kê dựa trên thao tác truy xuất thông thường, nhưng nếu đọc hoặc ghi liên tục một khối lượng lớn dữ liệu thì tỉ lệ lỗi sẽ tăng lên vài lần, nếu việc đảo pha đọc ghi phải thực hiện liên tục không có thời gian nghỉ thì tần suất lỗi còn tăng cao hơn nữa. 2.2. BỘ PHÁT HIỆN LỔI Khi truyền tải một chuỗi các bit, các lỗi có thể phát sinh ra, bit 1 có thể biến thành bit 0 hay ngược lại. Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau: τ = Số bít bị lỗi / Tổng số bít được truyền SVTH: Nguyễn Mùi 5 Đồ án môn học Truyền dẫn vô tuyến Tỷ lệ lỗi này có giá trị từ 10 -5 đến 10 -8 . Tùy thuộc vào từng loại ứng dụng, một lỗi có mức độ nghiêm trọng khác nhau, chính vì thế cần có các cơ chế cho phép phát hiện lỗi cũng như sửa lỗi. Các thống kê cho thấy rằng 88% các lỗi xẩy ra do sai lệch một bit 10% các lỗi xảy ra do sự sai lệch 2 bit kề nhau. Chính vì thế ta ưu tiên cho vấn đề phát hiện các lỗi trên một bit sửa đổi chúng một cách tự động. Với ý tưởng như thế, ta sử dụng các phát hiện lỗi: bên cạnh các thông tin hữu ích cần truyền đi, ta thêm vào các thông tin điều khiển. Bên nhận thực hiện việc giải các thông tin điều khiển này để phân tích xem thông tin nhận được là chính xác hay có lỗi. Hình 2.1: Mô hình xử lý lỗi trong truyền dữ liệu 2.3 PHÂN LOẠI Thông tin điều khiển được đưa vào có thể theo 2 loại: • Loại thứ nhất gọi là bộ sửa lỗi (Error-correcting codes). • Loại thứ hai gọi là bộ phát hiện lỗi (Error-detecting codes). Bộ sửa lỗi cho phép bên nhận có thể tính toán suy ra được các thông tin bị lỗi (sửa dữ liệu bị lỗi). Trong khi bộ phát hiện lỗi chỉ cho phép bên nhận phát hiện ra dữ liệu có lỗi hay không. Nếu có lỗi bên nhận sẽ yêu cầu bên gởi gởi lại thông tin. Với tốc độ của đường truyền ngày càng cao, người ta thấy rằng việc gởi lại một khung thông tin bị lỗi sẽ ít tốn kém hơn so với việc tính toán để suy ra giá trị ban đầu của các dữ liệu bị lỗi. Chính vì thế đa số các hệ thống mạng ngày nay đều chọn bộ phát hiện lỗi. 2.4 MỘT SỐ LOẠI PHÁT HIỆN SỮA LỔI hamming • kiểm tra chẵn lẻ • kiểm tra theo chiều dọc • kiểm tra phần dư SVTH: Nguyễn Mùi 6 Đồ án môn học Truyền dẫn vô tuyến CHƯƠNG 3: MỘT SỐ LOẠI PHÁT HIỆN SỮA LỔI TRONG TRUYỀN DẪN VÔ TUYẾN 3.1. HAMMING Hamming là một bước phát triển của kiểm tra chẵn lẻ có khả năng sửa sai do xác định được vị trí lỗi. Số lượng bit của Hamming tùy thuộc số lượng bit của chuỗi dữ liệu. Ta có thể lý luận như sau để xác định số lượng bit của Hamming. Gọi m là số bit của chuỗi dữ liệu n là số bit của Hamming, tổng số bit phát đi là m+n. - Với n = 1 ta xác định được 1 trong 2 kết quả : chuỗi dữ liệu sai hoặc đúng nhưng không biết vị trí lỗi. - Với n = 2, 1 trong 4 trường hợp xảy ra: 2 phép kiểm tra đều cho kết quả đúng, 2 phép kiểm tra đều cho kết quả sai, phép kiểm tra thứ nhất sai, phép kiểm tra thứ hai đúng ngược lại. 4 trường hợp này cho phép kết luận được 1 bit sai ở 1 trong 3 vị trí. - Với n=3, có 8 khả năng xảy ra ta có thể kết luận được 1 bit sai ở 1 trong 7 vị trí. - Với số n bất kỳ, có 2n khả năng xảy ra ta có thể kết luận được 1 bit sai ở 1 trong 2n -1 vị trí. Vậy để có thể phát hiện 1 lỗi tại 1 vị trí cụ thể thì số n nhỏ nhất được chọn phải thỏa: 2n- 1 ≥ Um + n hay 2n ≥ Um + n + 1 Các bit của Hamming chèn vào vị trí 2n dùng cho kiểm tra chẵn lẻ. Các bit khác là bit thông tin (dữ liệu). Dưới đây là một ví dụ để thấy cách xác định Hamming: Giả sử chuỗi dữ liệu cần truyền gồm 4 bit như sau : 1 0 1 0 Với m = 4, ta chọn n = 3, bất đẳng thức trên được thỏa Gọi các bit của Hamming là H1 H2 H4 (1, 2, 4 là các vị trí ta sẽ đặt 3 bit của Hamming vào dòng dữ liệu). Gọi các bit dòng dữ liệu là X3, X5, X6, X7. Tổ hợp các bit dữ liệu bit mã, ta đươc 1 2 3 4 5 6 7 H1 H2 X3 H4 X5 X6 X7 SVTH: Nguyễn Mùi 7 Đồ án môn học Truyền dẫn vô tuyến Giả sử ta chọn Parity chẵn, các bit sẽ được xác định như sau: H1 ⊕ X3 ⊕ X5 ⊕ X7 = 0 H1 = X3 ⊕ X5 ⊕ X7 = 1 ⊕ (0 ⊕ 0) = 1 ⊕ 0 = 1 Tương tự: H2 = X3 ⊕ X6 ⊕ X7 = 1 ⊕ (1 ⊕ 0) = 1 ⊕ 1 = 0 H4 = X5 ⊕ X6 ⊕ X7 = 0 ⊕ (1 ⊕ 0) = 0 ⊕ 1 = 1 Bản tin bao gồm bit trở thành: 1 0 1 1 0 1 0 Ở máy thu để kiểm tra người ta thực hiện các phép toán: C1 = H1 ⊕ X3 ⊕ X5 ⊕ X7 C2 = H2 ⊕ X3 ⊕ X6 ⊕ X7 C4 = H4 ⊕ X5 ⊕ X6 ⊕ X7 Nếu C1 = C2 = C4 = 0, không có lỗi xảy ra. Nếu C1 = 1, C2 = C4 = 0, một trong các bit ở vị trí 1, 3, 5, 7 bị lỗi. Nhưng C2 = C4 = 0 có nghĩa là các bit ở vị trí 2, 3, 6, 7 4, 5, 6, 7 đã đúng. Vậy bit sai phải ở vị trí 1. Lý luận tương tự ta có các trường hợp khác. Thí dụ nếu C1 = C2 = C4 = 1 thì bit lỗi là bit ở vị trí 7 Thí dụ bản tin nhận được là 1 0 1 1 1 1 0 Mạch dò sai sẽ tính C1 , C2 , C4 như sau: C1 = H1 ⊕ X3 ⊕ X5 ⊕ X7 = 1 ⊕ 1 ⊕ 1 ⊕ 0 = 1 C2 = H2 ⊕ X3 ⊕ X6 ⊕ X7 = 0 ⊕ 1 ⊕ 1 ⊕ 0 = 0 C4 = H4⊕ X5⊕ X6⊕ X7 = 1 ⊕ 1 ⊕ 1 ⊕ 0 = 1 Vì chỉ bit X5 thuộc cả C1 C4 nên bit sai là bit thứ 5 Quan sát tổ hợp C4 C2 C1 ta thấy C4 C2 C1 = 1 0 1 = (5)10 Như vậy giá trị có được của tổ hợp này cho ta biết vị trí bit sai cần sửa chữa. Nếu tổ hợp này bằng 0 chứng tỏ bản tin nhận đúng. Hamming có thể được phát triển để dò ra hai bit sai sửa được một bit lỗi. 3.2. KIỂM TRA CHẴNN LẺ (Paruty Check). 3.2.1. Dùng kiểm tra chẵn lẻ để dò ra một bit sai Đây là phương pháp kiểm tra đơn giản nhất, bằng cách thêm vào sau chuỗi dữ liệu (thường là một ký tự) một bit sao cho tổng số bit 1 kể cả bit thêm vào là số chẵn (hoặc lẻ), ở máy thu kiểm tra lại tổng số này để biết có lỗi hay không. Phương pháp đơn giản nên chất lượng không cao, nếu số lỗi là chẵn thì máy thu không nhận ra. SVTH: Nguyễn Mùi 8 Đồ án môn học Truyền dẫn vô tuyến 3.2.2. Dùng kiểm tra chẵn lẻ để dò sai hai bit Vì mỗi lần thực hiện kiểm tra chẵn lẻ cho phép dò ra một bit lỗi nên ta có thể nghĩ rằng nếu thực hiện nhiều phép kiểm tra đồng thời cho phép dò được nhiều lỗi. Ví dụ: Để dò ra 2 lỗi của một chuỗi dữ liệu có thể thực hiện hai phép kiểm tra, một với các bit chẵn một với các bit lẻ. Cho chuỗi dữ liệu: 01101000. Lần lượt thực hiện kiểm tra chẵn với các bit ở vị trí 1, 3, 5, 7 các bit ở vị trí 2, 4, 6, 8. Gọi P1 P2 là các bit kiểm tra: P1=0+1+1+0 = 0 P2=1+0+0+0 = 1. Chuỗi dữ liệu phát: 01101000 01. Máy thu dò ra lỗi khi 2 bit liên tiếp bị sai. Tuy nhiên, nếu hai bit sai đều là 2 bit chẵn (hoặc 2 bit lẻ) thì máy thu cũng không dò ra. 3.2.3. Dùng kiểm tra chẵn lẻ để dò ra một chuỗi bit sai Đôi khi nhiễu làm sai cả một chuỗi dữ liệu (ta gọi là burst errors), để dò ra được chuỗi bit sai này, người ta làm theo cách lưu truyền dữ liệu của máy tính (lưu từng bit của một byte trong các chip riêng để truyền trên các đường khác nhau nơi nhận sẽ tái hợp) để thực hiện việc kiểm tra. Chuỗi dữ liệu sẽ được chia ra thành các khung (frames), thực hiện kiểm tra cho từng khung, thay vì phát mỗi lần một khung, người ta phát các tổ hợp bit cùng vị trí của các khung, nhiễu có thể làm hỏng một trong các tổ hợp này chuỗi bit sai này có thể được nhận ra ở máy thu. Ví dụ dưới đây minh họa cho việc kiểm tra phát hiện chuỗi dữ liệu sai: Máy thu dò ra các khung có lỗi (các bit parity có dấu *) nhưng không xác định được cột nào bị sai do đó phải yêu cầu máy phát phát lại tất cả các cột SVTH: Nguyễn Mùi 9 Đồ án môn học Truyền dẫn vô tuyến 3.2.4. Kiểm tra khối Một cải tiến của kiểm tra chẵn lẻ là kiểm tra khối (Block Check Character, BCC). Bản tin được viết thành khối việc kiểm tra chẵn lẻ được thực hiện theo cả 2 chiều dọc (Vertical Redundancy Check, VRC) ngang ( Longitudinal Redundancy Check, LRC) Gọi các bit của mỗi ký tự là bij (i=1, , n là thứ tự các bit trong ký tự ; j=1, , m là thứ tự của ký tự) Rj là bit parity của ký tự thứ j, giả sử chọn parity chẵn, ta có : Rj = b1j + b2j + + bnj Ci là bít parity của tất cả bít thứ i Ci = bi1 + bi2 + + bim + Tập hợp các bit Ri (j = 1, ,m) dùng kiểm tra chiều dọc tập hợp các bit Ci (i = 1, ,n) dùng kiểm tra chiều ngang. Phương pháp kiểm tra khối cho phép phát hiện sửa một lỗi vì xác định được vị trí của lỗi đó, chính là giao điểm của hàng cột có bit sai. Máy thu có khả năng phát hiện hai lỗi sai trên cùng một hàng hoặc cột nhưng không xác định được vị trí bit lỗi. Ví dụ hai bit 1 3 của ký tự thứ nhất cùng sai thì bit kiểm tra VRC không phát hiện được nhưng bit LRC thì thấy ngay. Nếu bây giờ có thêm các bit 1 3 của ký tự thứ 5 cùng sai thì máy thu sẽ không phát hiện được, như vậy cũng còn trường hợp không phát hiện được lỗi nếu số lỗi là một số chẵn theo những vị trí xác định nào đó, tuy nhiên trường hợp này rất hiếm xảy ra. SVTH: Nguyễn Mùi 10 [...]... VRC LRC giảm đi tỷ lệ lỗi không phát hiện được hai đến bốn bậc so với dùng chỉ VRC Hãy xem trường hợp bit 1 3 trong ký tự 1 đang bị lỗi Khi bên nhận tính toán được bit VRC cho ký tự 1, nó sẽ kiểm tra với bit VRC đã nhận, sẽ không phát hiện được lỗi Tuy nhiên, khi nó tính toán được ký tự LRC, bit 1 3 của ký tự này sẽ khác với những bit đó trong ký tự LRC nhận được, sẽ phát hiện được lỗi. .. kiểm tra chẵn lẻ cho phép phát hiện lỗi trong một số trường hợp, tuy nhiên hiệu suất phát sẽ bị giảm chỉ được dùng trong các hệ thống có vận tốc truyền thấp Trong các hệ thống truyền đồng bộ người ta hay sử dụng CRC, này cho phép dò lỗi rất hiệu quả hiệu suất truyền cũng cao 3.3 KIỂM TRA THEO CHIỀU DỌC(Longitudinal Redundancy Check or Checksum) Có thể cải thiện sơ đồ trên bằng cách dùng... này cũng không phải là thật sự tốt Bây giờ, nếu giả sử bit 1 3 của ký tự 5 cũng bị lỗi, phương pháp này sẽ không phát hiện được điểm sai 3.4 KIỂM TRA PHẦN DƯ Để cải thiện hơn nửa việc kiểm tra lỗi người ta dùng phương pháp kiểm tra dư thừa theo chu kỳ (Cyclic Redundancy Check, CRC) Nguyên tắc tạo CRC : Xét khung dữ liệu gồm k bit nếu ta dùng n bit cho khung kiểm tra FCS (Frame check sequence)... mang chia cho số P này nếu phép chia đúng thì khung dữ liệu không chứa lỗi * Nhắc lại một số tính chất của phép toán Mod-2 : Phép cộng Mod-2 là phép cộng nhị phân không nhớ, dưới đây là thí dụ về phép cộng phép nhân Phép cộng Mod-2 được thực hiện bởi cổng EX-OR Phép trừ Mod-2 giống như phép cộng Nhân Mod-2 một số với 2n Tương ứng với dời số đó n bit về bên trái thêm n bit 0 vào bên phải số đó,... đa thức Ta cũng giả sử lỗi này không được dò ra, nghĩa là E(x) chia đúng cho P(x), hay E(x) = P(x)*K(x) Thay P(x) = (x+1)*H(x) vào E(x) được E(x) = (x+1)*H(x)*K(x), biểu thức này cho E(1) = 0 Điều này trái với giả thiết ở trên, hay nói cách khác, máy thu sẽ dò ra lỗi nếu ta chọn P(x) sao cho chia đúng cho (x+1) Vậy máy thu sẽ luôn luôn dò ra lỗi gồm nhiều bit có tổng số bit lỗi là số lẻ nếu ta chọn... n bit về bên trái thêm n bit 0 vào bên phải số đó, thí dụ 11001* 23 = 11001000 Phép chia Mod-2 được thực hiện giống như phép chia thường nhưng nhớ là phép trừ trong khi chia được thực hiện như phép cộng 3.4.1 Xác định CRC dùng thuật toán Mod-2 Gọi T = (k+n) bit là khung thông tin được phát , với n < k M = k bit dữ liệu, k bit đầu tiên của T F = n bit của khung FCS, n bit cuối của T P = (n+1)... bit) Số phải tìm R (5 bit) cho khung FCS được xác định như sau : - Nhân M với 25 cho : 101000110100000 - Thực hiện phép chia cho P 0001110 ← R Ta có R = 01110, cộng với 25M, sẽ cho số T phát đi là : T = 101000110100000 + 01110 = 101000110101110 Nếu bản tin không có lỗi T phải chia đúng cho P Thực hiện phép chia T/P ta thấy số dư = 0 Tóm lại, để có một khung FCS n bit , người ta phải dùng một số P có n+1... là đa thức sinh (generator polynomial), dạng của nó do các giao thức qui định, tổng quát P phải có bit đầu bit cuối là bit 1 0001110 ← R Ta có R = 01110, cộng với 25 M, sẽ cho số T phát đi là : T = 101000110100000 + 01110 = 101000110101110 Nếu bản tin không có lỗi T phải chia đúng cho P Thực hiện phép chia T/P ta thấy số dư = 0 Tóm lại, để có một khung FCS n bit , người ta phải dùng một số P có n+1... polynomial), dạng của nó do các giao thức qui định, tổng quát P phải có bit đầu bit cuối là bit 1 SVTH: Nguyễn Mùi 13 Đồ án môn học Truyền dẫn vô tuyến 0001110 ← R Ta có R = 01110, cộng với 25M, sẽ cho số T phát đi là : T = 101000110100000 + 01110 = 101000110101110 Nếu bản tin không có lỗi T phải chia đúng cho P Thực hiện phép chia T/P ta thấy số dư = 0 Tóm lại, để có một khung FCS n bit , người... P phải có bit đầu bit cuối là bit 1 3.4.2 Dùng phép biểu diễn đa thức Để thấy quá trình hình thành CRC, ta có thể dùng phép biểu diễn một số nhị phân dưới dạng một đa thức của biến x với hệ số là các số nhị phân bậc của x là giá trị chỉ vị trí của số nhị phân đó Ví dụ số nhị phân 110101 có thể biểu diển bởi 1.x5 + 1.x4 + 0.x3 + 1 x2 + 0.x1 + 1.x0 = x5 + x4 + x2 + 1 Chú ý số n bit cho bậc . TRONG TRUYỀN DẪN 5 VÔ TUYẾN 5 2.1. ĐỊNH NGHĨA BIT VÀ LỔI BIT 5 2.2. BỘ MÃ PHÁT HIỆN LỔI 5 2.3 PHÂN LOẠI 6 2.4 MỘT SỐ LOẠI MÃ PHÁT HIỆN VÀ SỮA LỔI 6 CHƯƠNG 3: MỘT SỐ LOẠI MÃ PHÁT HIỆN VÀ SỮA LỔI TRONG. gọi là bộ mã phát hiện lỗi (Error-detecting codes). Bộ mã sửa lỗi cho phép bên nhận có thể tính toán và suy ra được các thông tin bị lỗi (sửa dữ liệu bị lỗi) . Trong khi bộ mã phát hiện lỗi chỉ. HIỆN VÀ SỮA LỔI • Mã hamming • Mã kiểm tra chẵn lẻ • Mã kiểm tra theo chiều dọc • Mã kiểm tra phần dư SVTH: Nguyễn Mùi 6 Đồ án môn học Truyền dẫn vô tuyến CHƯƠNG 3: MỘT SỐ LOẠI MÃ PHÁT HIỆN VÀ

Ngày đăng: 21/06/2014, 09:21

Tài liệu cùng người dùng

Tài liệu liên quan