Mục lục bài họcĐang ở d02-b1
← A-Level Computer Science
0/30 bài đã học xong
Chương 2 · Communication · Bài 1/3 của chương · bài 4/30 của A-Level Computer Science

Data transmission: modes, methods and error checking

Truyền dữ liệu: chế độ, phương thức và kiểm lỗi
← Mục lục bài học
Lý thuyết · English

Serial and parallel

Serial sends one bit at a time down one wire; parallel sends several bits at once down several wires. Parallel looks faster and is, over very short distances. Over longer distances it suffers skew (bits arriving at slightly different times because the wires are not identical) and crosstalk (signals interfering between adjacent wires). That is why USB, SATA and network cables are all serial — the exam wants this reasoning, not just the definitions.

Simplex, half-duplex, full-duplex

Simplex: one direction only (keyboard to computer). Half-duplex: both directions, one at a time (walkie-talkie). Full-duplex: both directions at once (telephone call).

Why errors happen

Electrical interference, signal attenuation over distance, and timing problems all flip bits. Every method below detects errors; only one corrects them.

Four checking methods

Parity adds one bit so the number of 1s is even (or odd). Cheap, but fails when two bits flip. Checksum adds the data values, sends the total, and the receiver recalculates. Echo check sends the data back for comparison — doubles the traffic and cannot tell whether the error happened going or coming back. Check digit (ISBN, barcodes) catches typing and transposition errors at the point of entry.

Automatic Repeat reQuest

ARQ combines error detection with acknowledgements and timeouts: no ACK before the timeout, and the sender retransmits. This is detection plus retransmission, not correction. Genuine correction needs a parity block (row and column parity), where the intersection of the failing row and failing column identifies the exact bit to flip.

Giải thích tiếng Việt

Nối tiếp và song song

Nối tiếp gửi từng bit một trên một dây; song song gửi nhiều bit cùng lúc trên nhiều dây. Song song trông có vẻ nhanh hơn, và đúng là nhanh hơn trên khoảng cách rất ngắn. Nhưng đi xa thì nó gặp lệch pha (skew) — các bit tới nơi lệch thời điểm vì các dây không hoàn toàn giống nhau — và nhiễu xuyên âm (crosstalk) giữa các dây kề nhau. Đó là lý do USB, SATA và cáp mạng đều là nối tiếp; đề thi hỏi chính lập luận này chứ không hỏi định nghĩa suông.

Đơn công, bán song công, song công

Đơn công: chỉ một chiều (bàn phím tới máy tính). Bán song công: hai chiều nhưng lần lượt (bộ đàm). Song công: hai chiều cùng lúc (cuộc gọi điện thoại).

Vì sao có lỗi

Nhiễu điện, suy hao tín hiệu theo khoảng cách, và sai lệch định thời đều làm lật bit. Mọi phương pháp dưới đây đều PHÁT HIỆN lỗi; chỉ một phương pháp sửa được lỗi.

Bốn cách kiểm lỗi

Bit chẵn lẻ thêm một bit để tổng số bit $1$ là chẵn (hoặc lẻ). Rẻ, nhưng bó tay khi hai bit cùng lật. Tổng kiểm (checksum) cộng các giá trị dữ liệu, gửi kèm tổng, bên nhận tính lại. Kiểm vọng (echo check) gửi dữ liệu ngược về để so — làm gấp đôi lưu lượng và không biết lỗi xảy ra lúc đi hay lúc về. Chữ số kiểm tra (ISBN, mã vạch) bắt lỗi gõ sai và lỗi đảo chữ số ngay tại khâu nhập.

ARQ — yêu cầu gửi lại tự động

ARQ ghép phát hiện lỗi với báo nhận và thời gian chờ: hết thời gian chờ mà không có ACK thì bên gửi phát lại. Đây là phát hiện cộng gửi lại, KHÔNG phải sửa lỗi. Muốn sửa thật thì cần khối chẵn lẻ (chẵn lẻ theo cả hàng và cột): giao điểm của hàng sai và cột sai chỉ đúng bit cần lật.

Ví dụ — định vị bit sai bằng khối chẵn lẻ

Dữ liệu được gửi theo khối chẵn lẻ CHẴN, mỗi hàng và mỗi cột có một bit chẵn lẻ. Bên nhận được:

Hàng $1$: $1\ 0\ 1\ 1\ 0\ 0\ 1$ (bit cuối là bit chẵn lẻ hàng)
Hàng $2$: $0\ 1\ 1\ 0\ 1\ 1\ 0$
Hàng $3$: $1\ 1\ 0\ 0\ 1\ 0\ 1$
Hàng $4$ (bit chẵn lẻ cột): $0\ 0\ 0\ 1\ 0\ 1\ 0$

Tìm bit sai.

Giải.

Bước 1 — kiểm từng hàng (đếm số bit $1$, phải CHẴN).

Hàng $1$: $1+0+1+1+0+0+1=4$ ✓ chẵn
Hàng $2$: $0+1+1+0+1+1+0=4$ ✓ chẵn
Hàng $3$: $1+1+0+0+1+0+1=4$ ✓ chẵn

Cả ba hàng đều hợp lệ — tạm dừng và đọc ý nghĩa của điều này.

Bước 2 — kiểm từng cột. Cột $j$ gồm ba bit dữ liệu cộng bit chẵn lẻ ở hàng $4$:

Cột $1$: $1+0+1+0=2$ ✓
Cột $2$: $0+1+1+0=2$ ✓
Cột $3$: $1+1+0+0=2$ ✓
Cột $4$: $1+0+0+1=2$ ✓
Cột $5$: $0+1+1+0=2$ ✓
Cột $6$: $0+1+0+1=2$ ✓
Cột $7$: $1+0+1+0=2$ ✓

Bước 3 — kết luận. Không hàng nào và không cột nào sai, nên khối này không phát hiện được lỗi: dữ liệu nhận được nhất quán.

Điều phải hiểu. "Không phát hiện được lỗi" khác với "chắc chắn không có lỗi". Nếu hai bit trên cùng một hàng VÀ cùng hai cột bị lật cùng lúc (bốn bit tạo thành một hình chữ nhật), mọi phép chẵn lẻ vẫn khớp và lỗi lọt qua. Khối chẵn lẻ sửa được lỗi một bit: khi đúng một hàng và đúng một cột báo sai, giao điểm của chúng chính là bit cần lật.

Bẫy hay mất điểm — Viết "bit chẵn lẻ sửa lỗi". Một bit chẵn lẻ chỉ PHÁT HIỆN lỗi lẻ số bit và không biết bit nào sai. Chỉ khối chẵn lẻ hai chiều mới định vị được bit sai để sửa. Nhầm chỗ này mất điểm ở gần như mọi kỳ.
Phải nhớ — Nối tiếp thắng song song đường dài vì skew và crosstalk. Bốn phương pháp kiểm lỗi đều chỉ phát hiện; ARQ thêm gửi lại; chỉ khối chẵn lẻ hai chiều định vị được bit sai.

Đọc xong rồi — làm thử ngay

Bài tập của chương Communication gồm 14 câu trắc nghiệm và 3 đề tự luận. Đáp án hiện ngay khi chọn, miễn phí.

Làm bài tập chương →