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

Báo Cáo Bài Tập Lớn Đại Số Tuyến Tính Đề Tài 6 Mã Hamming.pdf

10 4 2

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

THÔNG TIN TÀI LIỆU

Nội dung

1 ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 6 MÃ HAMMING Giảng viên hướng dẫn TS Nguyễn Xuân Mỹ 2 Lớp L14 Nhóm 6 MỤC LỤC 1 Giới thiệu Mã Hamming (7,[.]

1 ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 6: MÃ HAMMING Giảng viên hướng dẫn : TS Nguyễn Xuân Mỹ Lớp : L14 Nhóm : MỤC LỤC Giới thiệu Mã Hamming (7,4) 1.1 Lịch sử 1.2 Khái niệm 1.3 Ưu điểm 1.4 Nhược điểm .2 Ví dụ Minh họa mã Hamming Matlab .4 3.1 Vấn đề 3.2 Code 3.3 Ví dụ Ứng dụng vào đời sống Truyền tin không gian Tài liệu tham khảo Kết luận BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING Mã Hamming (7,4) nguyên lý mật mã đặt móng cho phát triển q trình truyền tải, sửa lỗi thông tin ứng dụng thông tin vào mặt của đời sống đại Thông qua sở lý thuyết, ví dụ, chương trình minh họa ứng dụng thực tiễn, hiểu rõ tính chất loại mã GIỚI THIỆU VỀ MÃ HAMMING (7,4) 1.1 Lịch sử: Từ lỗi phát sinh khó chịu thường gặp việc vận hành máy điện cơ: - Tốc độ hoạt động chậm - Luôn gây lỗi đọc - Không tự sửa lỗi mà chuyển sang công việc khác Hamming xây dựng hàng loạt thuật tốn có hiệu cao để giải vấn đề sửa lỗi Năm 1950, ông công bố phương pháp mà biết là Mã Hamming 1.2 Khái niệm Với nhóm bit liệu, mã Hamming thêm bit kiểm tra Thuật toán (7,4) Hamming sửa chữa bit lỗi nào, phát tất lỗi bit, lỗi bit gây Sơ đồ: BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING Thêm bit kiểm tra Mã ban đầu 1.3 - Mã gửi Mã nhận Kiểm tra, sửa lỗi Mã sửa lỗi Ưu điểm Có thể phát tối đa lỗi trường bit sửa lỗi trường bit mà không cần tìm cụ thể lõi lỗi nào, nằm đâu - Phương pháp mã Hamming có hiệu mạng nơi luồng liệu cung cấp cho lỗi bit - Mã Hamming sử dụng dễ dàng nên phù hợp ứng dụng nhớ máy tính sửa lỗi đơn 1.4 Nhược điểm Nếu nhiều bit bị lỗi,có thể dẫn đến bit khác bị thay đổi,điều khiến liệu bị sai sót thêm Ví dụ Nguyên lý mã Hamming bắt nguồn từ việc khai triển mở rộng quan điểm chẵn lẻ Việc khai triển bắt đầu việc nhân ma trận, gọi là Ma trận Hamming Ta có ma trận: BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING - Để truyền gửi liệu, nhóm bit liệu mà muốn gửi thành vectơ Lấy ví dụ, liệu "1011" vectơ là: P= - Giả sử, muốn truyền gửi liệu Chúng ta tìm tích của He và P He P = = = r TH1: Giả sử khơng có lỗi xảy tín hiệu máy thu thu r’ giống với r - Máy thu nhân Hd  với r’, để kiểm tra xem có lỗi xảy hay khơng BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING = - Vì vectơ tồn số khơng máy thu kết luận khơng có lỗi xảy TH2: Nếu có lỗi xảy bit Ví dụ bit số Thì vector mà máy thu nhận là: - Máy thu nhân Hd với r’ thu kết Ta vector giống với cột thứ Hd nên bit thứ r’ bị lỗi Ta việc chuyển thành ngược lại MINH HỌA MÃ HAMMING BẰNG CHƯƠNG TRÌNH SỬA LỖI TRONG MÔI TRƯỜNG MATLAB 3.1 Vấn đề: Nhập đoạn mã có số từ hai số 1, sau truyền Để nhận mã xác ban đầu, ta phải thêm vào đoạn ba bit để sửa lỗi phát sinh trình truyền đi, đoạn mã nhận xác BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING 3.2 Code function Hamming_Code syms w v a i t x a=input('Nhap thong tin can chuyen a='); H=[1 1 0 ;1 1 0;0 1 0 1]; G=[1 1 0 0; 1 1 0 ; 1 0; 0 0 1]; v=a*G; for i=1:7 if mod(v(1,i),2)==0; v(1,i)=0; else v(1,i)=1; end end num2str(v); fprintf('Ma tran chuyen di\n'); disp(v); w=input ('Nhap vector nhan duoc w='); x=H*w'; for i=1:3 if mod(x(i,1),2)==0;%chuyen ve va x(i,1)=0; else x(i,1)=1; end end for i=1:7 if x==H(:,i); t=i; break; else t=0; end end if t~=0 if w(1,t)==0; w(1,t)=1; else w(1,t)=0; end end num2str(w); fprintf('Ma tran sau chuyen doi \n'); disp(v); end 3.3 Ví dụ minh họa Một tín hiệu gửi gồm bit “1 0 1” Tín hiệu nhận “0 1 0 0” Thực mơi trường Matlab để tìm bit sai sửa lại cho BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING ỨNG DỤNG THỰC TẾ VÀO ĐỜI SỐNG: Được sử dụng vào tính tốn máy tính, thơng tin liên lạc, nén thông tin Ứng dụng truyền thông tin không gian: - Các vệ tinh, tàu thám hiểm vũ trụ thường chụp ảnh hành tinh khác, sau gửi Trái Đất - Trong q trình truyền thơng tin đi, ảnh chụp mã hóa đoạn mã 1, mơi trường truyền ln có từ trường làm nhiễu loạn thơng tin, dẫn đến thơng tin bị sai, ảnh bị nhiễu hay hư hỏng, khơng cịn giữ trạng thái ban đầu - Khi mã Hamming áp dụng để nhận biết sửa thông tin sai trước trạm mặt đất nhận thông tin xác Ngồi ra, nhờ việc ứng dụng mã Hamming vào việc truyền thơng tin mà ta có ảnh từ vệ tinh với chất lượng ảnh rõ nét BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING Lỗi truyền hình ảnh dạng mã qua môi trường vũ trụ Nguồn :youtube BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING BAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMINGBAO.cao.bai.tap.lon.dai.so.TUYEN.TINH.de.tai.6.ma.HAMMING

Ngày đăng: 18/12/2023, 06:59

w