You are on page 1of 10

MÃ HAMMING TRUYỀN SỐ LIỆU

BÀI 04
MÃ HAMMING
Mục tiêu: Giảm tỷ lệ lỗi trong kênh truyền bằng cách sử dụng mã Hamming
Công cụ: MATLAB, Simulink, Communications Blockset
Các bước thực hiện:
1. Khởi động MATLAB bằng cách double-click vào biểu tượng MATLAB trên desktop hoặc truy
cập Start  Program  MATLAB

2. Để xây dựng mô hình mới, từ menu chính chọn New -> Simulink model

3. Trong cửa sổ Simulink model, chọn Library Browser

4. Từ cửa sổ Simulink Library Browser, tìm và kéo thả các khối Bernoulli Binary
Generator, Binary Symmetric Channel, Error Rate Calculation và khối
Display vào mô hình.
- Để tìm nhanh một khối, chúng ta gõ tên khối: ví dụ “Bern” trong mục tìm kiếm, sau đó chọn
biểu tượng tìm kiếm. Tại cửa sổ hiển thị kết quả, kéo thả khối vào mô hình.

TRANG 1
MÃ HAMMING TRUYỀN SỐ LIỆU

- Thực hiện thao tác tương tự cho các khối còn lại

- Double-click trên khối Error Rate Calculation, mục Output data  chọn Port

TRANG 2
MÃ HAMMING TRUYỀN SỐ LIỆU

- Thực hiện kết nối các khối lại với nhau, chúng ta có mô hình hoàn chỉnh như hình bên dưới. Lưu
lại với tên model01.mdl

5. Khảo sát chức năng và các tham số của từng khối trong mô hình trên và ghi nhận vào báo cáo
(Yêu cầu 1).
6. Double-click trên các khối để mở cửa sổ Source Block Parameters. Cài đặt các tham số như
hình dưới đây  sau đó nhấn OK
Bernoulli Binary Generator

Binary Symmetric Channel

TRANG 3
MÃ HAMMING TRUYỀN SỐ LIỆU

Errors Rate Calculation

7. Thay đổi thời gian mô phỏng từ 10.0 thành inf tại menu chính

TRANG 4
MÃ HAMMING TRUYỀN SỐ LIỆU

8. Chạy mô phỏng và quan sát kết quả được hiển thị tại cửa sổ Display

9. Bây giờ chúng ta thêm 2 khối Hamming Decoder và Hamming Decoder lần lượt vào trước và
sau của khối Binary Symmetric Channel. Điều này minh họa cho việc dữ liệu được mã hóa và
giải mã trong quá trình truyền dữ liệu. Lưu mô hình thành tên khác đặt tên là: model02.mdl

10. Để hiển thị kích thước khung dữ liệu, vào menu Display  Signals & Ports  Signal
Dimensions.

Thông tin được hiển thị như hình bên dưới. Ngõ ra của khối Bernoulli Binary Generator được xác
định là [4x1] chỉ ra rằng dữ liệu được biểu diễn thành từng frame 4 bit. Bởi vì khối mã hóa
Hamming Encoder sử dụng mã hóa [7,4] nên kết quả của chuỗi dữ liệu sau khi được mã hóa là 7
bit, vì thế ngõ ra của Hamming Encoder thể hiện là [7x1].

TRANG 5
MÃ HAMMING TRUYỀN SỐ LIỆU

Kết quả mô phỏng của mô hình trên:

11. Mô hình mở rộng


Để hiện thị đầy đủ thông tin dữ liệu bị lỗi trên kênh truyền được tạo ra từ khối Binary Symmetric
Channel, chúng ta thêm khối Scope vào mô hình. Điều này giúp chúng ta dễ dàng phân tích quá
trình sửa lỗi của mã Hamming. Hình bên dưới thể hiện mô hình mở rộng sau khi thêm khối Scope.
Lưu mô hình với tên: model03.mdl

Cài đặt tham số của các khối như sau:


Error Rate Calculation

TRANG 6
MÃ HAMMING TRUYỀN SỐ LIỆU

Relational Operator

Scope
Khối Scope hiển thị vị trí lỗi trên kênh truyền trước và sau quá trình mã hóa Hamming.
- Double-click để mở cửa sổ cấu hình Scope
- Click vào nút cài đặt ( )trên thanh công cụ
- Đặt giá trị Time range: 5000

TRANG 7
MÃ HAMMING TRUYỀN SỐ LIỆU

- Tab History  mục Limit data point to last: 30000  OK

- Click chuột phải vào vùng hiển thị của Scope 1 (phần trên)  chọn Axes properties. Đặt
giá trị như hình bên dưới

- Tương tự cho Scope 2 (phần dưới)


- Thay đổi kích thước cửa sổ Scope tương tự như hình sau

Quan sát kết quả

TRANG 8
MÃ HAMMING TRUYỀN SỐ LIỆU

Khi chạy mô phỏng, khối Scope hiển thị bit dữ liệu bị lỗi được tạo ra bởi khối Binary Symmetric
Channel (phần trên của hình). Sau đó, dữ liệu được phục hồi qua quá trình mã hóa, giải mã
Hamming. Tuy nhiên, không phải tất cả các bit đều được phục hồi (phần dưới của hình).

TRANG 9
MÃ HAMMING TRUYỀN SỐ LIỆU

IV. TÀI LIỆU THAM KHẢO


1. Giáo trình Truyền Số Liệu, Trần Xuân Phương biên soạn, Đại Học Công Nghệ TP. HCM, 2015
2. Behrouz A. Forouzan (2007), Data Communications and Networking, Fourth Edition. The
McGraw-Hill Companies, Inc.
3. William Stallings (2007), Data and Computer Communications, Eighth Edition. The Pearson
Education, Inc.
4. https://vi.wikipedia.org/wiki/Mã_Hamming

TRANG 10

You might also like