Tải bản đầy đủ

Mạch tạo mã và giải mã hamming sửa lỗi đơn bit cho một dãy dữ liệu phát gồm n bit

Câu hỏi:





Mạch tạo mã và giải mã Hamming sửa lỗi
đơn bit cho một dãy dữ liệu phát gồm n bit.
Mô hình hệ thống
Luồng bit phát và thu đều ở dạng nối tiếp,
thử nghiệm với luồng dữ liệu n bit.


I.NỘI DUNG
PHƯƠNG PHÁP


MẠCH TẠO MÃ VÀ GIẢI MÃ HAMMING
Mã Hamming là loại mã tuyến tính được R. W.Hammingđưa
ra và sử dụng trong một số hệ thống thông tin. Mã này có khả
năng sửa sai một lỗi. Mã Hamming có sơ đồ tạo mã và giải mã

đơn giản.
Số bít kiểm tra P và số bit tin tức D phải thoả mãn biểu thức:

Khi số bit tức tăng thì số bit kiểm tra cũng tăng, tuy nhiên tốc độ

tăng của số bit tin tức nhanh hơn nhiều so với tốc độ tăng của
số bit kiểm tra. Do vậy, khi số bit tin tức càng lớn thì hiệu quả sử
dụng bit chẵn/lẻ càng cao, điều này dẫn đến việc mã Hamming
trở nên phổ biến.


Mã Hamming là một bước phát triển của kiểm tra chẵn lẻ và có khả
năng sửa sai do xác định được vị trí lỗi.
Trước tiên ta hiểu mã chẵn, mã lẻ là gì. Mã chẵn là mã
có tổng số bit 1 là số chẵn. Ngược lại là mã lẻ. Ví dụ:
11011 là mã chẵn
10011 là mã lẻ


. Số lượng bit của mã Hamming tuỳ thuộc vào số lương bit của
chuỗi dữ liệu. Ta có thể lí luận như sau để xác định được số
lượng bit của mã Hamming.
gọi D là số bit của chuỗi dữ liệu, goi P là số bit kiểm tra của
mã Hamming. Tổng số bit phát đi là P + D.
Với P = 1, ta xác định được một trong 2 kết quả: chuỗi dữ
liệu sai hoặc đúng, nhưng không biết bị trí lỗi.
Với P = 2, có 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 cho kết quả đúng phép kiểm tra thứ hai
cho kết quả sai và ngược lại. 4 trường hợp này cho phép kết
luận được 1 bit sai trong 3 vị trí.
Với P = 3, có 8 khả năng xảy ra và có thể kết luận được một
bit sai ở 1 trong 7 vị trí.
Với P bất kì có
khả năng xảy ra và ta có thể kết luận được
1 bit sai ở 1 trong
- 1 vị trí.


Vậy để có thể phát hiện 1 lỗi tại 1 vị trí cụ thể thì số P nhỏ
nhất phải thoả mãn

Ví dụ: giả sử chuỗi dữ liệu cần truyền gồm 4 bit như sau 1010.
Với D = 4 ⇒ P = 3 (BDT trên được thoả mãn)
Gọi các bit kiểm tra của mã Hamming là P1,P2 và P3. Gọi các bit dữ liệu là
D1 ,D2 ,D3 ,D4.
Ta có cách tạo mã Hamming như sau: Đầu tiên cần xác định giá trị của các
bit kiểm tra tính chẵn lẻ của từ mã. Vị trí các bit kiểm tra chẵn lẻ ở vị trí 2
tính từ bit có trọng số nhỏ nhất.
Bit kiểm tra chẵn lẻ có nhiệm vụ kiểm tra chẵn/lẻ (tuỳ theo yêu cầu) kể cả
nó trong mã Hamming.
Bit kiểm tra chẵn/lẻ P kiểm tra các bit mà nó chiếm giữ có giá trị 1


Các vị trí kiểm tra của các bit kiểm tra chẵn/lẻ:
Bit P0 tại các vị trí: 1, 3, 5, 7, 9, 11, 13, 15,…
Bit P1 tại các vị trí: 2, 3, 6, 7, 10, 11, 14, 15,…
Bit P2 tại các vị trí: 4, 5, 6, 7, 12, 13,14,15,…
Bit p3 tại các vị trí: 8, 9, 10, 11, 12, 13, 14,15,…

Hệ thâp
phân

Hệ nhị phân
P3P2P1P0

0

0000

1

0001

2

0010

3

0011

4

0100

5

0101

6

0110

7

0111

8

1000

9

1001

10

1010

11

1011

12

1100

13

1101

14

1110

15

1111


Tổ hợp mã Hamming là:



II SƠ ĐỒ KHỐI VÀ MẠCH CỤ THỂ
1.Sơ đồ khối


2.Mạch cụ thể


III Nguyên lí hoạt động
*/Cấu tạo










Khối tạo lỗi và khối tím Pi gồm các cổng logic XOR
Khối chuyển tín hiệu từ song song sang nối tiếp gồm:
1 IC 74150: Bộ chọn địa chỉ 16đầu vào và 1 đầu ra
1 IC 74293: Bộ đếm, trong bài này là bộ đếm mode 14
Khối chuyển dữ liệu từ nối tiếp sang song song gồm
2 IC 74164: Thanh ghi chuyển tín hiệu 8 bit ra song song
2 IC 74373: Thanh chốt dữ liệu
Khối giải mã: Các cổng XOR để tìm Si
Khối sửa lỗi: sửa lỗi cho các Di


*/ Nguyên lí hoạt
động






Tín hiệu ban đầu được đưa vào khối tạo lỗi qua các cổng XOR
để tạo một bit lỗi đồng thời các tín hiệu cũng được đưa vào khối
tìm Pi. Sau khi tìm Pi và tạo lỗi thì tín hiệu được sắp xếp để tạo
mã Hamming .
Sau đó mã Hamming được đưa vào bộ chuyển tín hiệu từ
song song sang nối tiếp. Mỗi xung clock thì bộ đếm (74293) đếm
1 đơn vị đồng thời bộ chon địa chỉ (74150) chọn 1 vị trí tiếp
theo(một bit tiếp theo) chuyển thành nối tiếp.
Sau 14 xung clock thì toàn bộ 13 bit của mã Hamming
chuyển thành nối tiếp để phát đi. Bên thu tín hiệu sẽ chuyển từ
nối tiếp sang song song sử dụng thanh ghi. Cứ mỗi xung clock
thanh ghi lại lưu trữ 1 bit dữ liệu, khi đủ 14 xung khiển thông qua
LE (hoạt động ở mức cao).LE được nối với chân Reset của bộ
đếm.


Toàn bộ tín hiệu sẽ được xuất ra khỏi thanh chốt và đi tới
bộ giải mã và sửa lỗi. Các bit tin tức được đưa vào khối sửa
lỗi, các bit kiểm tra chẵn/lẻ thì đi vào khối giải mã. Ở đây
sẽ tính các Si tương ứng với các Pi . Các Si được đưa
vào
bộ sửa lỗi để tính các Xj là các tổ hợp tương ứng
sửa lỗi
cho các bit tin tức DJ ( 1 ≤ J ≤ 9).
Các XJ được đưa vào khối tạo lỗi vào các cổng XOR
cùng với cac DJ tương ứng để sửa lỗi. Đầu ra là kết quả
cần tìm.


CẢM ƠN THẦY
VÀ CÁC BẠN ĐÃ
GIÀNH THỜI
GIAN THEO DÕI.
CHÚC CÁC BẠN
LÀM BÀI THÀNH
CÔNG TỐT ĐẸP !



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×

×