Bài giảng Sinh học - Giao tiếp kết nối số liệu
• Các khái niệm cơ bản về truyền số liệu.
• So sánh 2 sơ đồ điều khiển truyền dẫn: SYN & ASYN.
• Mô tả các phương thức đồng bộ bit (clock), character (byte) của mode ASYN và các phương pháp mã hoá tương ứng.
• Mô tả kỹ thuật đồng bộ khung trong truyền dẫn ASYN & SYN hướng ký tự.
• Sử dụng các ký tự và bit chèn thêm phục vụ đồng bộ.
• Các kỹ thuật đồng bộ bit trong truyền dẫn đồng bộ.
• Các kỹ thuật phát hiện lỗi, nén dữ liệu.
• Nguyên lý hoạt động của các loại thiết bị ghép kênh.
CHƯƠNG 3GIAO TIẾP KẾT NỐI SỐ LIỆU1NỘI DUNG CHÍNH Các khái niệm cơ bản về truyền số liệu.So sánh 2 sơ đồ điều khiển truyền dẫn: SYN & ASYN.Mô tả các phương thức đồng bộ bit (clock), character (byte) của mode ASYN và các phương pháp mã hoá tương ứng.Mô tả kỹ thuật đồng bộ khung trong truyền dẫn ASYN & SYN hướng ký tự.Sử dụng các ký tự và bit chèn thêm phục vụ đồng bộ.Các kỹ thuật đồng bộ bit trong truyền dẫn đồng bộ.Các kỹ thuật phát hiện lỗi, nén dữ liệu.Nguyên lý hoạt động của các loại thiết bị ghép kênh.2GIỚI THIỆU Data được dùng để chỉ 1 (vài) khối tài liệu đã số hoá.Thông tin được hiểu là tin tức chứa trong data đang được truyền đi.Mất dữ liệu, ngay cả 1 bit cũng gây lỗi nên cần phải điều khiển lỗi.Điều khiển luồng là cần thiết.Mã hoá là công cụ phục vụ điều khiển lỗi.Môi trường truyền dẫn bit nối tiếp được sử dụng để kết nối các DTE.3TRUYỀN SONG SONG4TRUYỀN NỐI TIẾP5CHẾ ĐỘ ĐƠN CÔNG6CHẾ ĐỘ BÁN SONG CÔNG7CHẾ ĐỘ SONG CÔNG8CÁC MODE ĐỒNG BỘ PHIÊN TRUYỀNPhần tử nhỏ nhất trong truyền dữ liệu là bit.Từng 8 bit nhóm thành các byte hoặc ký tự (character).Các byte hoặc ký tự được tổ chức thành các khung(frame).Để đồng bộ phiên truyền, ta cần xác định:Điểm bắt đầu mỗi chu kỳ bit = đồng bộ bit (đồng hồ)Điểm bắt đầu mỗi byte hoặc ký tự = đồng bộ byte or ký tựĐiểm bắt đầu mỗi khung = đồng bộ khung9CÁC MODE ĐỒNG BỘ PHIÊN TRUYỀNĐể đồng bộ được 3 cấp trên, có 2 mode đồng bộ được sử dụng:Mode không đồng bộ (Asynchronous transmission)Mode đồng bộ (Synchronous transmission)10MODE TRUYỀN DẪN KHÔNG ĐỒNG BỘSự đồng bộ giữa 2 DTE không được duy trì trong suốt phiên truyền mà chỉ được thiết lập mỗi khi có dữ liệu truyền.Ví dụ: có ký tự cần truyền đi thì đồng bộ được thiết lập.Sử dụng cho dữ liệu ký tự, đồng bộ được thiết lập cho từng ký tự ở Star bit và kết thúc ở Stop bit.11MODE TRUYỀN DẪN ĐỒNG BỘSự đồng bộ giữa 2 DTE được thiết lập từ đầu và duy trì trong suốt phiên truyền. Sử dụng cho dữ liệu là các khối lớn, truyền với tốc độ cao.Đầu thu giữ được đồng bộ với đầu phát bằng cách:- Luồng bit phát đi phải được mã hoá để đồng bộ bit.- Tất cả các khung(frame)được dẫn đầu bởi 1 hay nhiều byte điều khiển nhằm đảm bảo máy thu có thể dịch luồng bit đến theo các ranh giới byte hay ký tự một cách chính xác và tin cậy- Từng khung phải được “đóng gói” trong một cặp ký tự (byte) đặc biệt để đồng bộ khung.12KIỂM SOÁT LỖI(ERROR CONTROL)Kiểm soát lỗi là chức năng cần thiết để khắc phục các lỗi do môi trường vật lý gây ra. Kiểm soát lỗi là sửa lỗi hoặc yêu cầu phát lại khung lỗi.Sửa lỗi sử dụng mã sửa sai.Yêu cầu phát lại sử dụng mã phát hiện lỗi. Ví dụ: Phát hiện lỗi bằng bit Parity (P).13ĐIỀU KHIỂN LUỒNG(Flow Control)Điều khiển luồng là điều chỉnh tốc độ phát của DTE nguồn để không gây tràn ở DTE đích.Nếu hai thiết bị hoạt động với tốc độ khác nhau, chúng ta thường phải điều khiển số liệu ngõ ra của thiết bị tốc độ cao hơn để ngăn chặn trường hợp tắc nghẽn trên mạng cho nên cần có sự điều khiển luồng thông tin giữa 2 thiết bị truyền.14MÃ TRUYỀN(Transmission Code)Có một số chuẩn mã hóa cho dữ liệu ký tự (text):1. EBCDIC – Exteded Binary Code Decimal Interchange Code2. ASCII – American Standard Code for Information Interchange (IA5 - International Alphabet Number 5)15Bảng mã EBCDIC16Bảng mã EBCDIC (tiếp theo)17Bảng mã ASCII18II. THÔNG TIN NỐI TIẾP BẤT ĐỒNG BỘ Các mạch điều khiển truyền trong DTE hình thành nên giao tiếp giữa thiết bị và liên và liên kết dữ liệu nối tiếp và phải thực thi các chức năng sau: + Chuyển từ song song sang nối tiếp cho mỗi kí tự hay byte để chuẩn bị lưu trữ và xử lý bên trong thiết bị và ngược lại. + Tại máy thu phải đạt được sự đồng bộ bit,byte và frame + Thực hiện cơ chế kiểm tra thích hợp để phát hiện lỗi và khả năng phát hiện lỗi ở máy thu phải khả thi.192.1 ĐỒNG BỘ BITNguyên lý hoạt động202.1 ĐỒNG BỘ BITN=1 (RxC = TxD)212.1 ĐỒNG BỘ BITN=16 (RxC = 16 x TxD)222.2 ĐỒNG BỘ KÝ TỰĐồng bộ ký tự được thực hiện sau khi có đồng bộ bit.Các bit nằm giữa start-bit và stop-bit là của một ký tự.232.3 ĐỒNG BỘ KHUNG Có hai loại dữ liệu ký tự:Ký tự Non-printable: bao gồm cả các ký tự điều khiển.Ký tự printable: không có các ký tự điều khiển.Ví dụ: một số ký tự điều khiển như: SOH, DLE. STX. . .242.3 ĐỒNG BỘ KHUNGCấu trúc khung với dữ liệu PrintableCấu trúc khung với dữ liệu Non-Printable25III. II. THÔNG TIN NỐI TIẾP ĐỒNG BỘ Truyền đồng bộ phân biệt hai loại dữ liệu:Dữ liệu là ký tự: có thực hiện đồng bộ ký tự.Dữ liệu là bit nhị phân: không thực hiện đồng bộ ký tự.Vì vậy có hai loại truyền đồng bộ: hướng ký tự & hướng bit.Cả hai loại trên đều có chung chức năng đồng bộ bit.263.1 ĐỒNG BỘ BIT Trong truyền đồng bộ có hai phương pháp đồng bộ bit:Đồng bộ bit bằng mã hoá và khôi phục đồng hồ.Đồng bộ bit bằng vòng khoá pha số(Phase lock loop-DPLL).27a) Đồng bộ bit bằng mã hoá và khôi phục đồng hồPISOLocal clockClock encoder. . .SIPOClock extract. . .TransmitterReceiverTxD RxDCác loại mã: lưỡng cực, Manchester, và Manchester vi sai.Việc khôi phục đồng hồ giựa vào các chuyển tiếp của mã.28Mã hóa lưỡng cực (Bipolar)Tín hiệu mã hoá lưỡng cực, TxD/RxDĐồng hồ khôi phục, RxC11111000Luồng bit được phát điĐồng hồ phát, TxCTín hiệu thu29Mã hóa Manchester (Mã hoá Phase)11111000Tín hiệu mã hoá Manchester, TxD/RxDĐồng hồ khôi phục, RxCLuồng bit được phát điĐồng hồ phát, TxCTín hiệu thuMã hoá Manchester (Mã hóa Phase)3011111000Tín hiệu mã hoá Manchester vi sai, TxD/RxDĐồng hồ khôi phục, RxCLuồng bit được phát điĐồng hồ phát, TxCTín hiệu thuMã hóa Manchester vi sai31b) Đồng bộ bit bằng DPLLCác bit được mãhóa: NRZI.PISOLocal clockBit encoder. . .SIPOx N Local clock. . .TransmitterReceiverTxD RxDDPLLBit encoder32b) Đồng bộ bit bằng DPLLNRZI: bit 0 - đổi trạng thái, bit 1 - không đổi trạng thái.33b) Đồng bộ bit bằng DPLL34b) Đồng bộ bit bằng DPLLVị trí các chuyển tiếpLuồng bit thu được, RxD32 x CLKXung lấy mẫu tín hiệu, RxC32 chu kỳ32 chu kỳTrường hợp lý tưởng.35b) Đồng bộ bit bằng DPLLVị trí các chuyển tiếpLuồng bit thu được, RxD32 x CLKXung lấy mẫu tín hiệu, RxC32 chu kỳ32 chu kỳTrường hợp điều chỉnh pha (DPLL).A B C D E10 4 4 4 1032+1 chu kỳ32+2 chu kỳ32-1 chu kỳ32-2 chu kỳ363.2 ĐỒNG BỘ HƯỚNG KÝ TỰSYNSYNSTXETXHướng truyềnTimeĐồng bộ ký tựĐầu khungCuối khungDữ liệu của khungCấu trúc khung.37ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . . ‘01101000’Hướng truyềnTime38ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . . ‘01101000’Hướng truyềnTime393.2 ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . . ‘01101000’Hướng truyềnTime40ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . . ‘01101000’Hướng truyềnTime41ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . .= ‘01101000’SYNHướng truyềnTime42ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . .SYN= ‘01101000’SYNHướng truyềnTime43ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . .SYNSYN= ‘01000000’STXHướng truyềnTime44ĐỒNG BỘ HƯỚNG KÝ TỰQuá trình đồng bộ ký tự.. . . . 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 . . . .SYNSYNSTXData của khungHướng truyềnTime45ĐỒNG BỘ HƯỚNG KÝ TỰChèn thêm DLE cho dữ liệu Non-printable.SYNSYNSTXDLEHướng truyềnTimeĐồng bộ ký tựĐầu khungCuối khungDữ liệu của khungETXDLEDLEDLE463.3 ĐỒNG BỘ HƯỚNG BIT Truyền đồng bộ hướng bit không có cấp đồng bộ ký tự:Sử dụng cờ đầu khung và cờ cuối khung (01111110). Có ba phương pháp đồng bộ khung:Sử dụng cờ đầu khung (10101011) và độ dài khung (Length) .Sử dụng các bit vi phạm (JK0JK000, JK1JK111 ) .47a) Sử dụng cờ đầu & cuối khungHướng truyềnTime. . . .0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 . . . . . . . . . . . . . . . . 0 1 1 1 1 1 1 0 Đường truyền rỗiCờ đầuCờ cuốiMột khungData của khungKhông được có nhóm ‘111111’ trong thành phần của khung.48a) Sử dụng cờ đầu & cuối khungHướng truyềnTime0 1 1 1 1 1 1 0 1 0 0 1 1 1 1 1 0 0 1 1 0 1 0 0 0 0 1 1 1 1 1 0 1 1 . . . 0 1 1 1 1 1 1 0 Cờ đầuCờ cuối 1 0 0 1 1 1 1 1 0 1 1 0 1 0 0 0 0 1 1 1 1 1 1 1 . . . Data truyềnChèn bit 0Chèn bit 049a) Sử dụng cờ đầu & cuối khungPISOChèn bit ‘0’. . .SIPO. . .TransmitterReceiverTxD RxDChỉ thị chènPhát hiện bit ‘0’TxCRxCChỉ thị 50b) Sử dụng cờ đầu & độ dài khung1 0 1 0 1 0 . . . 1 0 1 0 1 0 1 0 1 1 Header Length Data ĐuôiPhần đồng bộ bitĐầu khungĐộ dài khungĐộ dài cố địnhĐộ dài cố địnhSơ đồ này thường được sử dụng trong các LAN.51c) Sử dụng các bit vi phạmSử dụng mã Manchester, cờ đầu và cuối1 0 1 0 1 0 . . . 1 0 J K 0 J K 0 0 0 J K 1 J K 1 1 1Phần đồng bộ bitĐầu khungCuối khungData của khungSơ đồ này thường được sử dụng trong các LAN. 1 0 J K 0 J K 0 0 052III. CÁC PHƯƠNG THỨC PHÁT HIỆN LỖI Có hai phương pháp điều khiển lỗi:Điều khiển lỗi bằng phương pháp Sửa lỗi tại đầu thu:ký tự hay frame dữ liệu được truyền sẽ chứa một vài thông tin bổ sung nhằm giúp máy thu phát hiện lỗi nằm ở đâu trong luồng bit truyền.Điều khiển lỗi bằng phương pháp yêu cầu phát lại: ký tự hay frame dữ liệu truyền chỉ chứa thông tin đủ cho máy thu phát hiện lỗi, không thể xác định vị trí bit lỗi vì vậy cần phải có một lược đồ truyền lại để máy phát truyền bản copy khác của thông tin bị sai này53-CƠ CHẾ PHÁT HiỆN LỖI544.1 PARITY 1001001 1 Parity chẵn Hướng truyềnTimeĐường dây rỗiStar bitStop bitsCác bit của một ký tựPLSBMSB 1001001 0 Parity lẻChỉ phát hiện được lỗi lẻ bit.Overhead lớn: 1/8 = 12.5%55PARITYBit 1Bit 2XOR000011101110564.2 BLOCK SUM CHECKPRB6B5B4B3B2B1B0000000101010100001000110001000001010110101000000111000111000001111000001STXETXBCC (chẵn)Parity lẻCác ký tự của khung57PHÁT HIỆN LỖI MỘT BITPRB6B5B4B3B2B1B0000000101010100001000010001000001010110101000000111000111000001111000001STXETXBCC (chẵn)Parity lẻCác ký tự của khung58PHÁT HIỆN LỖI 2 BITPRB6B5B4B3B2B1B0000000101010100001100010001000001010110101000000111000111000001111000001STXETXBCC (chẵn)Parity lẻCác ký tự của khung59Không phát hiện được lỗiPRB6B5B4B3B2B1B0000000101010100001100010001000001010110101000000110001111000001111000001STXETXBCC (chẵn)Parity lẻCác ký tự của khung- Độ tin cậy của BCC khoảng 98 %604.3 Cyclic redundancy check (CRC)1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 . . . .1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 . . . .Cụm lỗi 4 bitTối thiểu 4 bit không lỗiTối thiểu 6 bit không lỗiCụm lỗi 6 bitHướng truyềnData phátData thuLỗi cụm61CRC1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 . . . .1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 . . . .Không coi là Cụm lỗi 11 bitCụm 11 bit tiếp theo vẫn có bit lỗiHướng truyềnData phátData thuParity & BCC không phát hiện được lỗi cụm62NGUYÊN LÝ6364CÁCH TÍNH CRCCác bit dữ liệu được mơ phỏng thành một đa thức theo thứ tự truyền.Ví dụ: Chuỗi bit truyền 110101 thì ta cĩ đa thứcM(x)=x5+x4+x2+1Giả sử số bit CRC là C, ta sẽ chọn 1 đa thức bất kỳ G(x) gọi là đa thức sinh cĩ bậc C.Giả sử chọn G(x)=x3+165CÁCH TÍNH CRC(tt)-Sau đĩ lần lượt thực hiện các phép tính sau: +Nhân M(x) cho xc xc M(x)=x8+x7+x5+x3 + Chia xcM(x) cho G(x) ta sẽ cĩ kết quả là Q(x) với phần dư là R(x) xcM(x)=Q(x)+R(x)/G(x)66CÁCH TÍNH CRC(tt)Theo ví dụ trên ta cĩ:X8+x7+x5+x3 : x3+1= x5+x4+x+1+(x+1)/x3+1-Tính T(x)= xcM(x)+R(x)T(x)=x8+x7+x5+x3+x+1-Đổi T(x) trở lại chuỗi bit theo nguyên tắc tương tự, kết quả chính là chuỗi bit truyền với các bit sau cùng là CRC.-Kết quả chuỗi bit truyền là: 110101011Ở đầu thu sau khi nhận được chuỗi bit ta đổi là T(x) và dùng phép tốn module-2 chia cho G(x) nếu phần dư là 0 thì dữ liệu khơng sai. 67CÁCH TÍNH CRC(tt)Chứng minh:T(x)=xcM(x)+R(x)Và xcM(x)/G(x)=Q(x)+R(x)/G(x)T(x)/G(x)=Q(x)+R(x)/G(x)+R(x)/G(x)T(x)/G(x)=Q(x)+(1+1).R(x)/G(x)Vì đối với phép tốn module-2 thì 1+1=0Cho nên T(x)/G(x)=Q(x) hay R(x)=0R(x)=0 thì dữ liệu truyền khơng saiR(x)=! 0 thì dữ liệu truyền cĩ lỗi68Ví dụ69Ví dụ 2:Nội dung khung: 11100110Đa thức sinh: 11001Tìm F=?Tìm dữ liệu T cần truyền.704.3 Cyclic redundancy check (CRC) CRC sử dụng phép chia toàn bộ dãy bit data của khung cho dãy bit của đa thức sinh (n). Phần dư là CRC(n-1).Số chiaSố bị chiaKết quả000011101110Phép chia Modulo-2 (XOR)714.3 Cyclic redundancy check (CRC)Số chia ) Số bị chiaThương sốSố dưĐa thức sinhKích thước cố định (< số chia), sử dụng cho checksumDữ liệu của khungKhông sử dụngCách tính CRC724.3 Cyclic redundancy check (CRC)Ví dụ 1: dãy bit là 11100101, đa thức sinh là x4 + x3 + 1 1 1 0 0 1 ) 1 1 1 0 0 1 0 10 0 0 0 Thêm 4 bit 0 vào sau phần data 1 1 0 0 1 0 0 1 0 1 11 0Do thương =10 0 0 0 0 Do thương =00 1 0 1 101 1 0 0 1 Do thương =1 10 1 0 1 1734.3 Cyclic redundancy check (CRC)744.3 Cyclic redundancy check (CRC)754.3 Cyclic redundancy check (CRC)764.3 Cyclic redundancy check (CRC)77IV. NÉN DỮ LIỆUPacked decimal.Mã hoá vi sai.Mã hoá Huffman.78Bảng mã ASCII79PACKED DECIMAL - Nếu data chỉ là các số thì sử dụng mã hoá BCD (4 bit) hiệu quả hơn sử dụng ASCII (7 bit).STXHướng truyềnTimeKhoảng trắng26.32ETXCTRL‘2’‘6’‘:’‘3’‘2’‘;’‘7’‘:’‘9’‘;’7.9Số ký tự được mã hoá BCD80MÃ HOÁ VI SAI - Một số loại dữ liệu thực hiện mã hoá độ lệch của phần tử sau so với phần tử trước sẽ hiệu quả hơn mã hóa trị tuyệt đối.FHướng truyềnTimeF+2-10+14-3-5+2+14+1- 4+5-381MÃ HOÁ HUFFMANSinh viên tự nghiên cứu.Xem lại mã thống kê tối ưu – môn lý thuyết truyền tin.Đọc thêm mã Fano.82
File đính kèm:
- kttsl.ppt