Chương 4 Các kỹ thuật truyền dữ liệu số BK TP.HCM Truyền bất đồng bộ và truyền đồng bộ Các loại lỗi Phát hiện lỗi Sửa lỗi Cấu hình đường truyền Giao tiếp
Truyền dữ liệu song song Mỗi bit dùng một đường truyền riêng. Nếu có 8 bits được truyền đồng thời sẽ yêu cầu 8 đường truyền độc lập Để truyền dữ liệu trên một đường truyền song song, một kênh truyền riêng được dùng để thông báo cho bên nhận biết khi nào dữ liệu có sẵn (clock signal) Cần thêm một kênh truyền khác để bên nhận báo cho bên gởi biết là đã sẵn sàng để nhận dữ liệu kế tiếp, Dr. Dinh Duc Anh Vu 2
Truyền dữ liệu tuần tự Tất cả các bit đều được truyền trên cùng một đường truyền, bit này tiếp theo sau bit kia Không cần các đường truyền riêng cho tín hiệu đồng bộ và tín hiệu bắt tay (các tín hiệu này được mã hóa vào dữ liệu truyền đi) Vấn đề định thời (timing) đòi hỏi phải có cơ chế đồng bộ giữa bên truyền và bên nhận 2 cách giải quyết Bất đồng bộ: mỗi ký tự được đồng bộ bởi start và stop bit Đồng bộ: mỗi khối ký tự được đồng bộ dùng cờ, Dr. Dinh Duc Anh Vu 3
Truyền bất đồng bộ Dữ liệu được truyền theo từng ký tự để tránh việc mất đồng bộ khi nhận được chuỗi bit quá dài 5 8 bits Chỉ cần giữ đồng bộ trong một ký tự Tái đồng bộ cho mỗi ký tự mới Hành vi Đối với dòng dữ liệu đều, khoảng cách giữa các ký tự là đồng nhất (bằng chiều dài của phần tử stop) Ở trạng thái rảnh, bộ thu phát hiện sự chuyển 1 0 Lấy mẫu 7 khoảng kế tiếp (chiều dài ký tự) Đợi việc chuyển 1 0 cho ký tự kế tiếp Hiệu suất Đơn giản Rẻ Phí tổn 2 hoặc 3 bit cho một ký tự (~20%) Thích hợp cho dữ liệu với khoảng trống giữa các ký tự lớn (dữ liệu nhập từ bàn phím), Dr. Dinh Duc Anh Vu 4
Truyền bất đồng bộ, Dr. Dinh Duc Anh Vu 5
Truyền bất đồng bộ Đồng bộ khung (frame synchronization): dùng các ký tự điều khiển (STX: Start of Text, ETX: End of Text, DLE: Data Link Escape) STX F R L ETX Start bit Stop bit STX F Frame contents (printable characters) ETX DLE STX DLE ETX DLE STX Inserted DLE DLE DLE Frame contents (binary data) DLE ETX, Dr. Dinh Duc Anh Vu 6
Truyền đồng bộ Truyền không cần start/stop Phải có tín hiệu đồng bộ Đồng bộ bit (bit synchronization): sử dụng các phương pháp sau Tích hợp xung clock vào dữ liệu truyền đi Tích hợp thông tin đồng bộ (clock) vào trong dữ liệu truyền Đầu nhận sẽ tách thông tin đồng bộ dựa vào dữ liệu nhận được Manchester, differential Manchester, tần số sóng mang (analog) Sử dụng đường clock riêng Dùng một đường tín hiệu đồng bộ riêng biệt Một bên (phát hoặc nhận) tạo ra các xung clock đồng bộ với các bit truyền đi trên đường clock riêng Bên còn lại dùng tín hiệu trên đường clock riêng để làm clock Thích hợp khi truyền trong khoảng cách ngắn Tín hiệu đồng bộ dễ bị suy giảm trên đường truyền, Dr. Dinh Duc Anh Vu 7
Truyền đồng bộ Đồng bộ frame Mỗi block dữ liệu được bắt đầu bằng một cờ gọi là preamble, kết thúc bằng một cờ gọi là postamble Preamble và postamble là một mẫu bit (bit pattern) được quy định sẵn Một chuỗi các ký tự SYN (16h trong bảng mã ASCII) Mẫu bit 01111110 Frame: dữ liệu + preamble + postamble + thông tin điều khiển Hiệu quả hơn so với truyền bất đồng bộ (phí tổn thấp hơn cho các bit điều khiển) HDLC: 48 bit điều khiển cho mỗi block 1000 ký tự (8000 bit), Dr. Dinh Duc Anh Vu 8
Các loại lỗi xảy ra trên đường truyền Môi trường truyền dẫn bị nhiễu (điện, từ, ) dữ liệu nhận có lỗi (các bit bị thay đổi) 2 cách khắc phục khi phát hiện có lỗi Forward error control: thông tin sửa sai được thêm vào các ký tự hoặc các frame truyền đi, để bên nhận có thể phát hiện khi nào có lỗi va lỗi nằm ở đâu để sửa (có khả năng sửa lỗi) Feedback (backward) error control: thông tin sửa sai được thêm vào các ký tự hoặc các frame truyền đi chỉ đủ để phát hiện khi nào có lỗi (không có khả năng sửa lỗi). Cơ chế yêu cầu truyền lại ký tự/frame sai được dùng trong trường hợp này Phân loại lỗi Lỗi 1 bit Chỉ 1 bit bị lỗi, không ảnh hưởng các bit xung quanh Thường xảy ra do nhiễu trắng Lỗi chùm (busrt error) Một chuỗi liên tục B bit trong đó bit đầu, bit cuối và các bit bất kì nằm giữa chuỗi đều bị lỗi Thường xảy ra do nhiễu xung Ảnh hưởng càng lớn đối với tốc độ truyền cao Bit error rate (BER): xác suất một bit nhận được bị lỗi, Dr. Dinh Duc Anh Vu 9
Cơ chế phát hiện lỗi, Dr. Dinh Duc Anh Vu 10
Phát hiện lỗi bằng bit parity 1 bit parity được thêm vào 1 khối dữ liệu cần truyền đi Bit parity Parity chẵn: tổng số bit 1 có trong khối dữ liệu, kể cả bit parity, là số chẵn Parity lẻ: tổng số bit 1 có trong khối dữ liệu, kể cả bit parity, là số lẻ D a t a D a t a Parity bit ( ASCII ) B0 B1 B2 B3 B4 B5 B6 (odd ) h 0 0 0 1 0 1 1 0 e 0 1 0 1 0 1 1 1, Dr. Dinh Duc Anh Vu 11
Parity Đặc điểm Chỉ dò được lỗi sai một số lẻ bit, không dò được lỗi sai một số chẵn bit Không sửa được lỗi Ít được dùng trong truyền dữ liệu đi xa, đặc biệt ở tốc độ cao, Dr. Dinh Duc Anh Vu 12
Block Sum Check Block Sum Check (BSC): sử dụng parity hàng và cột Không sửa được sai, chỉ sửa được sai khi số bit sai trong dữ liệu là một Dò tìm được tất cả các lỗi sai một số lẻ bit và hầu hết các lỗi sai một số chẵn bit. Không dò được lỗi sai một số chẵn bit xảy ra đồng thời trên cả hàng và cột. D a t a Start D a t a Parity Stop B 1 B 2 B 3 B 4 B 5 B 6 B 7 (even) H 1 0 0 0 0 0 0 1 1 0 E 1 1 0 0 0 0 0 1 0 0 L 1 0 1 0 0 0 0 1 0 0 L 1 0 1 0 0 0 0 1 0 0 O 1 1 1 0 0 0 0 1 1 0 BCC (odd) 1 1 0 1 1 1 1 0 0 0, Dr. Dinh Duc Anh Vu 13
Block Sum Check Biến thể Dùng tổng bù 1 (1 s-complement sum) thay cho tổng modulo 2 (2-modulo sum) Các ký tự trong block được truyền được coi như các số nhị phân không dấu Tốt hơn phương pháp modulo 2 0000010 0000010 content 1011011 1101100 communication 1011011 1101100 0000011 0000011 11001100 0110010 1 s-complement sum 1 1001101 invert 0110010 11111110 1 1111111Zero in 1 s-complement, Dr. Dinh Duc Anh Vu 14
Cyclic Redundancy Check (CRC) Nguyên lý k-bit message Bên phát tạo ra chuỗi n bit FCS (Frame Check Sequence) sao cho frame gởi đi (n+k bit) chia hết cho 1 số xác định trước Bên thu chia frame nhận được cho cùng 1 số và nếu không có phần dư thì có khả năng không có lỗi Số học modulo 2 Exlusive-or + 1 1 0 1 0 1 1 1 0 1 0 1-1 1 0 1 0 1 1 1 0 1 0 1 11001 x 1 1 11001 11001 101011, Dr. Dinh Duc Anh Vu 15
CRC dùng số học Xác định FCS T: frame được truyền (k+n bit) D: message, dữ liệu cần truyền (k bit đầu của T) F: FCS (n bit sau của T) P: số chia được xác định trước (n+1 bit) Giả sử T = 2 n D + F Suy ra nếu lấy thì T chia hết P Kiểm tra lại? 2 n D P F = R = Q + R P, Dr. Dinh Duc Anh Vu 16
CRC dùng số học Vídụ: D = 1010001101 (10 bit) P = 110101 (6 bit) F =? (? bit) n = 6-1 = 5 bit, k = 10 bit, n+k = 15 bit Đáp số: F = 01110 Dữ liệu T = 101000110101110, Dr. Dinh Duc Anh Vu 17
CRC dùng số học Số chia P Dài hơn 1 bit so với FCS mong muốn Được chọn tùy thuộc vào loại lỗi mong muốn phát hiện Yêu cầu tối thiểu: msb và lsb phải là 1 Biểu diễn lỗi Lỗi = nghịch đảo bit (i.e. xor của bit đó với 1) T r = T + E T: frame được truyền T r : frame nhận được E: error pattern với 1 tại những vị trí lỗi xảy ra Nếu có lỗi xảy ra (E 0) thì bộ thu không phát hiện ra lỗi đó khi và chỉ khi T r chia hết cho P, nghĩa là E chia hết cho P khócókhả năng xảy ra, Dr. Dinh Duc Anh Vu 18
CRC dùng đa thức Cách khác để xác định FCS: đa thức D=110011 D(x) = x 5 +x 4 +x+1 P=11001 P(x) = x 4 +x 3 +1 Ví dụ Dữ liệu cần truyền: 1001001 (k = 7 bits) đa thức biểu diễn: D(x) = x 6 + x 3 + 1 Cho đa thức sinh: P(x) =x 3 + 1 (n = 3 bits) Dữ liệu D dịch trái n bits: x n D(x) = X 9 + X 6 + X 3 FCS = 001 Dữ liệu T được truyền: 1001001001, Dr. Dinh Duc Anh Vu 19
Cyclic Redundancy Check Các lỗi được phát hiện Tất cả các lỗi bit đơn Tất cả các lỗi kép nếu P(x) có ít nhất 3 toán hạng Một số lẻ lỗi bất kỳ nếu P(x) chứa 1 thừa số (x+1) Bất kỳ lỗi chùm nào mà chiều dài của chùm nhỏ hơn hoặc bằng chiều dài FCS Hầu hết các lỗi chùm lớn hơn CRC làmột trong những phương pháp thông dụng và hiệu quả nhất để phát hiện lỗi, Dr. Dinh Duc Anh Vu 20
Cyclic Redundancy Check 4 đa thức sinh được sử dụng rộng rãi CRC-12 = X 12 + X 11 + X 3 + X 2 + X + 1 12-bit FCS Dùng để truyền chuỗi các ký tự có độ dài 6-bit CRC-16 = X 16 + X 15 + X 2 + 1 16-bit FCS Dùng để truyền chuỗi các ký tự có độ dài 8-bit USA CRC-CCITT = X 16 + X 12 + X 5 +1 Europe CRC-32 = X 32 + X 26 + X 23 + X 22 + X 16 + X 12 + X 11 + X 10 + X 8 + X 7 + X 5 + X 4 + X 2 + X + 1 32-bit FCS Point-point synchronous transmission, DVB-T, Dr. Dinh Duc Anh Vu 21
CRC dùng mạch số 1 x 2 x 4 D=1010001101 P=110101 C0 C1 + C2 C3 + C4 C4* C3 C2* C1 C0* Input Initial 0 0 0 0 0 1 Step 1 1 0 1 0 1 0 Step 2 1 1 1 1 1 1 Step 3 1 1 1 1 0 0 Step 4 0 1 0 0 1 0 Step 5 1 0 0 1 0 0 Step 6 1 0 0 0 1 1 Step 7 0 0 0 1 0 1 Step 8 1 0 0 0 1 0 Step 9 1 0 1 1 1 1 Step 10 0 1 1 1 0 x 5 + 1010001101, Dr. Dinh Duc Anh Vu 22
Sửa lỗi Cách sửa lỗi thông thường là yêu cầu truyền lại khối dữ liệu bị lỗi Không thích hợp cho các ứng dụng trao đổi dữ liệu không dây Xác suất lỗi cao, dẫn đến việc phải truyền lại nhiều Thời gian trễ truyền lớn hơn nhiều thời gian truyền 1 khối dữ liệu Cơ chế truyền lại là truyền lại khối dữ liệu bị lỗi và nhiều khối dữ liệu khác tiếp theo Cần thiết sửa lỗi dựa vào các dữ liệu nhận được, Dr. Dinh Duc Anh Vu 23
Cơ chế sửa lỗi, Dr. Dinh Duc Anh Vu 24
Cơ chế sửa lỗi Thêm một số mã dư thừa vào dữ liệu truyền đi Bộ thu có khả năng suy luận ra dữ liệu gốc ban đầu khi có lỗi xảy ra Ví dụ: mã sửa lỗi block Tổng quát là thêm n bit vào sau k bit dữ liệu cần truyền Tạo thành block dữ liệu (n+k) bit (codeword) Trong từ mã có chứa k bit dữ liệu gốc Một số kỹ thuật FEC chuyển k bit dữ liệu gốc thành n (n>k) bit từ mã trong đó không xuất hiện k bit dữ liệu gốc Chi tiết xem chương 6, phần 6.4 Làm giảm tốc độ dữ liệu hiệu dụng Code rate: k/(n+k), Dr. Dinh Duc Anh Vu 25
Giao tiếp Giao tiếp Thiết bị xử lý dữ liệu (DTE: Data Terminal Equipment) thường không có các phương tiện phát dữ liệu, và chỉ phát các t/h số đơn giản như NRZ-L Cần một thiết bị giao tiếp (thiết bị phát dữ liệu-dce: Data Circuit-Terminating Equipment) ví dụ: modem, NIC, DCE phát các bit dữ liệu trên môi trường truyền dẫn DCE trao đổi dữ liệu và thông tin điều khiển với DTE Được thực hiện thông qua mạch trao đổi Cần một chuẩn giao tiếp rõ ràng Đặc tính Cơ khí Kết nối vật lý, các đầu kết nối Điện Điện áp, định thời thay đổi các mức điện thế, mã hóa, Chức năng Ý nghĩa của mỗi chân kết nối Dữ liệu, điều khiển, định thời, GND, Thủ tục Chuỗi các sự kiện xảy ra khi truyền dữ liệu, Dr. Dinh Duc Anh Vu 26
Giao tiếp, Dr. Dinh Duc Anh Vu 27
Chuẩn V.24/EIA-232-F Chuẩn giao tiếp được sử dụng rộng rãi, quy định bởi ITU-T (International Telecommunications Union- Telecommunication Standaridization Sector): Lĩnh vực tiêu chuẩn hóa viễn thông quốc tế. ITU-T chỉ đặc tả chức năng và thủ tục V.24 tham khảo các chuẩn khác cho các đặc tính cơ khí và đặc tính điện EIA-232-F (USA) RS-232 Đặc tính cơ khí: ISO 2110 Đặc tính điện: v.28 Chức năng: v.24 Thủ tục: v.24 Dùng để kết nối DTE với modem (DCE) sử dụng trên đường dây điện thoại, Dr. Dinh Duc Anh Vu 28
Đặc tính cơ khí DB-25 female (DTE), Dr. Dinh Duc Anh Vu 29
Đặc tính điện Dùng tín hiệu số Các giá trị được hiểu là dữ liệu hoặc điều khiển tùy thuộc vào mạch NRZ-L >+3V 0 <-3V 1 Tốc độ tín hiệu < 20kbps Chiều dài dây dẫn < 15m Điều khiển >+3V on <-3V off, Dr. Dinh Duc Anh Vu 30
Đặc tính chức năng V.24 EIA-232 Name Direction to Function Data signals 103 BA Transmitted data DCE Transmitted by DTE 104 BB Received data DTE Received by DTE Control signals 105 CA Request to send DCE DTE wishes to transmit 106 CB Clear to send DTE DCE is ready to receive, response to RTS 107 CC DCE ready DTE DCE is ready to operate 108.2 CD DTE ready DCE DTE is ready to operate 125 CE Ring indicator DTE DCE is receiving a ringing signal on the channel line 109 CF Received line signal detector DTE DCE is receiving a signal within appropriate limits on the channel line Timing signals 113 DA Transmitter sig. elm. timing DCE Clocking signal 114 DB Transmitter sig. elm. timing DTE Clocking signal; 115 DD Receiver sig. elm. timing DTE Clocking signal for circuit 104 Ground 102 AB Signal ground/common return Common ground reference for all circuits, Dr. Dinh Duc Anh Vu 31
Local/Remote loopback testing, Dr. Dinh Duc Anh Vu 32
Local/Remote loopback testing, Dr. Dinh Duc Anh Vu 33
Thủ tục Vídụ modem riêng bất đồng bộ, kết nối 2 thiết bị ởkhoảng cách ngắn Chỉ cần một số tín hiệu Signal ground (102) Transmitted data (103) Received data (104) Request to send (105) Clear to send (106) DCE ready (107) Received line signal detector (109), Dr. Dinh Duc Anh Vu 34
Modem riêng bất đồng bộ DCE ready Request to send Clear to send Dữ liệu Received line signal detector Dữ liệu, Dr. Dinh Duc Anh Vu 35
Modem riêng bất đồng bộ Khi modem (DCE) được bật lên và sẵn sàng, nó bật tín hiệu DCE ready Khi DTE sẵn sàng gởi dữ liệu, nó bật tín hiệu Request To Send Cấm chế độ nhận dữ liệu (nếu trong chế độ truyền half-duplex) Modem đáp lại sẵn sàng bằng tín hiệu Clear To Send DTE gởi dữ liệu Khi dữ liệu đến, modem gắn vào DTE sẽ bật tín hiệu Line Signal Detector và gởi dữ liệu cho DTE, Dr. Dinh Duc Anh Vu 36
Khoảng cách dài Hai modem nối với nhau qua mạng điện thoại Cần thêm 2 tín hiệu DTE ready (108.2) Ring indicator (125) Tương tự như việc sử dụng điện thoại, Dr. Dinh Duc Anh Vu 37
Hoạt động quay số (1), Dr. Dinh Duc Anh Vu 38
Hoạt động quay số (2), Dr. Dinh Duc Anh Vu 39
Hoạt động quay số (3), Dr. Dinh Duc Anh Vu 40
Null modem, Dr. Dinh Duc Anh Vu 41
Chuẩn giao tiếp EIA RS-232C DTR on DTR on Number of called modem sent to modem DSR on CD on RxD on CD off RTS on CTS on delay Connection setup Carrier on Data tones Carrier off Carrier on delay DSR on RI on RTS on CTS on TxD RTS off CTS off CD on TxD RTS off CTS off CD off DTR off DSR off Data tones Carrier off RxD on RTS off CTS off CD off DTR off DSR off Time DTR on DSR on delay, Dr. Dinh Duc Anh Vu 42
ISDN interface Chuẩn EIA-232-F cần quá nhiều chân trong giao tiếp Chuẩn X.21 đưa ra chuẩn giao tiếp 15 chân -> 8 chân -> ISDN ISDN (Intergrated Services Digital Network): thay thế mạng lưới điện thoại và truyền t/h tương tự bằng hệ thống truyền t/h số Giao tiếp giữa TE (terminal equipment tương tự DTE) và NT (networkterminating equipment) ISO 8877 giao tiếp thông qua 8 chân Transmit/receive truyền dữ liệu lẫn điều khiển, Dr. Dinh Duc Anh Vu 43
ISDN interface, Dr. Dinh Duc Anh Vu 44
ISDN interface Tín hiệu được truyền trên cáp xoắn Balanced transmission Giátrị nhị phân phụ thuộc vào sự sai khác mức điện thế giữa 2 dây dẫn Ít nhiễu: nhiễu như nhau trên 2 dây Mã hóa phụ thuộc tốc độ dữ liệu Basic rate (192 kb/s): pseudotenary (750mV) Primary rate 1.544 Mb/s: B8ZS 2.048 Mb/s: HDB3, Dr. Dinh Duc Anh Vu 45
Đọc thêm W. Stallings, Data and Computer Communications (7 th edition), Prentice Hall 2002, chapters 6, Dr. Dinh Duc Anh Vu 46