Giáo trình truyền dữ liệu

Tài liệu Giáo trình truyền dữ liệu: LỜI NĨI ðẦU   Giáo trình được biên soạn nhằm phục vụ cho sinh viên chuyên ngành Ðiện tử - Viễn thơng. Nội dung gồm chín chương, trọng tâm đi vào phần cứng đồng thời cĩ giới thiệu một số giao thức của hệ thống truyền dữ liệu. - Chương 1 và 2 ơn tập một số kiến thức cơ bản cĩ bổ sung một số khái niệm mới chuẩn bị cho các chương tiếp theo. - Chương 3 tập trung vấn đề mã hĩa, phân tích tính chất và khả năng các loại mã, thiết kế các loại mạch tạo mã. - Chương 4, 5 và 6 tìm hiểu các IC cùng giao thức truyền đồng bộ, bất đồng bộ đồng thời khảo sát các chuẩn giao tiếp dùng trong truyền dữ liệu. - Chương 7 bàn về biện pháp truyền dữ liệu nhờ đường dây điện thoại, kỹ thuật dùng trong modem. - Chương 8 trình bày các phương pháp đa hợp. - Chương 9 đề cập đến kỹ thuật truyền tín hiệu số trên hệ thống thơng tin. Tìm hiểu hoạt động của các IC CODEC. Theo chủ quan của tác giả, sự sắp xếp các chương với thứ tự như trên là hợp lý. Như chúng ta đã biết, vấn đề ...

pdf212 trang | Chia sẻ: Khủng Long | Lượt xem: 1555 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Giáo trình truyền dữ liệu, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
LỜI NĨI ðẦU   Giáo trình được biên soạn nhằm phục vụ cho sinh viên chuyên ngành Ðiện tử - Viễn thơng. Nội dung gồm chín chương, trọng tâm đi vào phần cứng đồng thời cĩ giới thiệu một số giao thức của hệ thống truyền dữ liệu. - Chương 1 và 2 ơn tập một số kiến thức cơ bản cĩ bổ sung một số khái niệm mới chuẩn bị cho các chương tiếp theo. - Chương 3 tập trung vấn đề mã hĩa, phân tích tính chất và khả năng các loại mã, thiết kế các loại mạch tạo mã. - Chương 4, 5 và 6 tìm hiểu các IC cùng giao thức truyền đồng bộ, bất đồng bộ đồng thời khảo sát các chuẩn giao tiếp dùng trong truyền dữ liệu. - Chương 7 bàn về biện pháp truyền dữ liệu nhờ đường dây điện thoại, kỹ thuật dùng trong modem. - Chương 8 trình bày các phương pháp đa hợp. - Chương 9 đề cập đến kỹ thuật truyền tín hiệu số trên hệ thống thơng tin. Tìm hiểu hoạt động của các IC CODEC. Theo chủ quan của tác giả, sự sắp xếp các chương với thứ tự như trên là hợp lý. Như chúng ta đã biết, vấn đề truyền thơng đã và đang phát triển rất nhanh với kỹ thuật ngày càng hồn hảo nên những gì viết ra ngày hơm nay cĩ thể khơng hồn tồn thích hợp trong tương lai. Tuy nhiên phần kiến thức cơ bản hàm chứa trong giáo trình luơn luơn vẫn là nền tảng cho sự phát triển sau này.. Ðây cũng là mong muốn mà người viết hy vọng mang đến cho các em sinh viên. Mặc dù giáo trình được viết cho đối tượng là sinh viên chuyên ngành Ðiện tử - Viễn thơng, nhưng với những ai cĩ quan tâm tới phần cứng của các hệ thống truyền dữ liệu cũng cĩ thể tìm thấy ở đây đơi điều bổ ích. Cuối cùng tác giả xin thành thật cám ơn Thạc sĩ Ðồn Hịa Minh đã đọc và đĩng gĩp nhiều ý kiến quý báu để giáo trình cĩ thể hồn thành. Người viết Nguyễn Trung Lập MỤC LỤC CHƯƠNG I: NHỮNG KHÁI NIỆM CƠ BẢN 1.1 VÀI DỊNG LỊCH SỬ . 1.2 NHỮNG KHÁI NIỆM CHUNG . 1.3 HỆ THỐNG TRUYỀN TƯƠNG TỰ . 1.4 HỆ THỐNG TRUYỀN SỐ . 1.5 HỆ THỐNG MỞ VÀ MƠ HÌNH OSI . CHƯƠNG 2 MÃ HĨA VÀ ðIỀU CHẾ: 2.1 PHỔ TẦN CỦA TÍN HIỆU . 2.2 MÃ HĨA . 2.3 ðIỀU CHẾ . CHƯƠNG 3: CÁC LOẠI MÃ TRONG TRUYỀN DỮ LIỆU: 3.1 MÃ NHỊ PHÂN CỦA CÁC CHỮ SỐ . 3.2 CÁC MÃ PHÁT HIỆN LỖI . 3.3 MÃ NÉN DỮ LIỆU . 3.4 MẬT MÃ . CHƯƠNG 4: TRUYỀN NỐI TIẾP BẤT ðỒNG BỘ: 4.1 HỆ THỐNG TRUYỀN DỮ LIỆU . 4.2 MẪU TÍN HIỆU TRONG TRUYỀN BẤT ðỒNG BỘ . 4.3 VÀI IC THỰC HIỆN GIAO THỨC BẤT ðỒNG BỘ . CHƯƠNG 5: CÁC CHUẨN GIAO TIẾP: 5.1 GIAO TIẾP DÙNG DỊNG ðIỆN VỊNG 20mA . 5.2 CHUẨN GIAO TIẾP RS-232D . 5.3 CHUẨN GIAO TIẾP RS-449, 422A&423A . CHƯƠNG 6: TRUYỀN NỐI TIẾP ðỒNG BỘ 6.1 GIAO TIẾP GIỮA DTE VÀ DCE ðỒNG BỘ . 6.2 CÁC GIAO THỨC ðỒNG BỘ . 6.3 KHẢO SÁT VÀI IC LSI TRUYỀN ðỒNG BỘ . 6.4 KIỂM TRA HỆ THỐNG THƠNG TIN . CHƯƠNG 7: TRUYỀN TÍN HIỆU BẰNG SĨNG MANG TƯƠNG TỰ: MODEMS 7.1 DẪN NHẬP. 7.2 CƠ SỞ KỸ THUẬT LIÊN QUAN. 7.3 MỘT SỐ MODEM ðỒNG BỘ VÀ BẤT ðỒNG BỘ. 7.4 VÀI MODEM DÙNG MẠCH LSI . CHƯƠNG 8: CẤC PHƯƠNG PHÁP ðA HỢP 8.1 ðA HỢP TẦN SỐ . 8.2 ðA HỢP THỜI GIAN . CHƯƠNG 9 TRUYỀN TÍN HIỆU TƯƠNG TỰ BẰNG SĨNG MANG SỐ: 9.1 HỆ THỐNG TRUYỀN SỐ . 9.2 ðIỀU MÃ XUNG . 9.3 ðIỀU CHẾ VI PHÂN VÀ DELTA . 9.4 2914 COMBO CHIP . WWW.UPDATESOFTS.COM – 2006 CHƯƠNG 1 NHỮNG KHÁI NIỆM CƠ BẢN  Nội dung : 1.1 VÀI DỊNG LỊCH SỬ . 1.2 NHỮNG KHÁI NIỆM CHUNG . 1.3 HỆ THỐNG TRUYỀN TƯƠNG TỰ . 1.4 HỆ THỐNG TRUYỀN SỐ . 1.5 HỆ THỐNG MỞ VÀ MƠ HÌNH OSI . 1 . 1 VÀI DỊNG LỊCH SỬ: Thơng tin dữ liệu là phương pháp truyền thơng dùng mã nhị phân thay cho tín hiệu. Cĩ thể coi lịch sử thơng tin dữ liệu bắt đầu vào năm 1837 với sự phát minh điện tín của Samuel F. B. Morse. Ðĩ là hệ thống truyền các xung điện biểu diễn cho các dấu chấm, vạch (tương đương với các số nhị phân 1, 0) trên các đường dây đồng nhờ các máy cơ điện. Các tổ hợp khác nhau của các mã này thay cho các chữ, số, dấu.... được gọi là mã Morse. Bản điện tín đầu tiên được phát hiện ở Anh do Charles Wheatstone và William Cooke thực hiện nhưng hệ thống của họ phải dùng 6 đường dây. Năm 1840, Morse đăng ký sáng kiến về điện tín ở Mỹ và đến năm 1844 thì đường dây điện tín đầu tiên được thiết lập giữa Baltimore và Washington D.C.. Năm 1849, bản tin đầu tiên được in nhưng với vận tốc rất chậm, cho đến năm 1860 vận tốc in đạt được là 15 bps. Cơng ty Ðiện tín Miền Tây (Western Union Telegraph Company) được thiết lập năm 1850 ở Rochester, New York cho phép thực hiện việc trao đổi thơng tin giữa các cá nhân. Năm 1874, Emile Baudot thiết kế được máy phát dùng phương pháp đa hợp, cĩ thể truyền cùng lúc 6 bản tin trên cùng một đường dây. Năm 1876, Alexander Graham Bell đã đưa điện tín lên một bước phát triển mới: sự ra đời của điện thoại. Thay vì chuyển bản tin thành các chuỗi mã Morse, Bell đã cho thấy rằng người ta cĩ thể truyền thẳng tín hiệu điện đặc trưng cho tiếng nĩi trên các đường dây. Những hệ thống điện thoại đầu tiên cần các cặp đường dây khác nhau cho hai người muốn trao đổi thơng tin với nhau, một người phải nối điện thoại của mình vào đúng đường dây nối với điện thoại của người mà mình muốn liên lạc. Dần dần sự kết nối được thực hiện bởi các tổng đài cơ khí rồi tổng đài điện tử, số . . . . Người ta khơng cịn biết hệ thống hoạt động thế nào, chỉ cần quay (bây giờ thì bấm) số và được kết nối. Năm 1899, Marconi thành cơng trong việc phát tin bằng vơ tuyến. Cĩ thể nĩi điện tín là phương tiện duy nhất được dùng để phát tin đi xa cho đến năm 1920, lúc đài phát thanh thương mại đầu tiên ra đời. Năm 1945, đánh dấu một sự kiện quan trọng đĩ là việc phát minh ra chiếc máy tính điện tử đầu tiên: chiếc ENIAC (Electronic Numerical Integrator And Calculator). Ðược thiết kế để tính đạn đạo phục vụ cho Thế chiến thứ II, ENIAC là thiết bị đầu tiên cĩ thể xử lý thơng tin dưới dạng điện. Mặc dù ENIAC khơng giữ một vai trị trực tiếp trong việc thơng tin dữ liệu nhưng nĩ cho thấy rằng các tính tốn và quyết định chính xác cĩ thể thực hiện được nhờ tín hiệu điện, một khả năng quan trọng trong hệ thống thơng tin hiện nay. Sau đĩ Ðại học Harvard liên kết với cơng ty IBM (International Business Machines Corporation) đã cho ra đời những chiếc máy tính đa dụng, điều khiển tự động đầu tiên. Ðến năm 1951 thì số lượng các chủng loại máy tính gia tăng rất nhiều (người ta đánh giá sự gia tăng này cĩ tốc độ tỉ lệ với hàm mũ) và nhu cầu trao đổi thơng tin trong mọi người cũng gia tăng với mức độ tương tự. Nhưng cho đến năm 1968 cơng ty AT & T xem như độc quyền: chỉ các thiết bị do chính cơng ty sản xuất mới được nối vào hệ thống thơng tin quốc gia. Vào thời điểm này, Hiệp hội thơng tin liên bang (FCC : Federal Communication Commission) của Mỹ, thơng qua Tịa án tối cao đã ký quyết định Carterfone, cho phép các thiết bị của các nhà chế tạo khác được nối vào hệ thống, quyết định này đã tác động thật sự đến sự ra đời của một kỹ nghệ mới: kỹ nghệ thơng tin dữ liệu. Theo thời gian sự phát triển của kỹỵ nghệ này đã đưa đến những hệ thống thơng tin dữ liệu số được thực hiện ở những khoảng cách đáng kể. Và bây giờ,với sự phát triển vũ bảo của máy tính , cơng nghệ chế tạo IC đa chức năng, khả năng to lớn của cáp quang và hệ thống vệ tinh địa tĩnh, thơng tin dữ liệu số đã trở thành phổ biến và cĩ một sức mạnh đến kỳ lạ, nĩ cĩ thể thỏa mãn nhiều yêu cầu về thơng tin liên lạc của mọi người trên tồn cầu trong một khoảng thời gian rất ngắn. Chương này đề cập đến một số khái niệm chung và tìm hiểu một cách sơ lược các hệ thống truyền tương tự, hệ thống truyền số cùng một số tính chất cơ bản của chúng. 1 . 2 NHỮNG KHÁI NIỆM CHUNG : 1.2.1. Tin tức, dữ liệu và tín hiệu. 1.2.2 Băng thơng . 1.2.3 Hình trạng hệ thống và các phương thức liên lạc . 1.2.4 Các phương pháp truyền . 1.2.5. Các phương pháp dồn kênh . 1.2.1 Tin tức, dữ liệu và tín hiệu (Information, Data & Signal): - Dữ liệu: bao gồm các sự kiện, khái niệm hay các chỉ thị được diễn tả dưới một hình thức thích hợp cho việc thơng tin, thơng dịch hay xử lý bởi con người hay máy mĩc. -Tin tức: Ý nghĩa mà con người qui cho dữ liệu theo các qui ước cụ thể. Tin tức cĩ thể biểu thị bởi tiếng nĩi, hình ảnh, các văn bản, tập hợp các con số, các ký hiệu, thơng qua nĩ con người hiểu nhau . . .. Trong hệ thống truyền thơng, thường người ta khơng phân biệt dữ liệu và tin tức. - Tín hiệu: Là tin tức, dữ liệu đã được chuyển đổi, xử lý (bởi các bộ phận mã hĩa và /hoặc chuyển đổi) cho phù hợp với mơi trường truyền thơng. Cĩ hai loại tín hiệu: tín hiệu tương tự và tín hiệu số. - Tín hiệu tương tự: cĩ dạng sĩng như (H.1.1a), đĩ là các đại lượng điện cĩ bất cứ giá trị nào trong một khoảng thời gian xác định. Tín hiệu tương tự quen thuộc cĩ dạng hình sin. Một tín hiệu tương tự cĩ thể được số hĩa để trở thành tín hiệu số. - Tín hiệu số: cĩ dạng sĩng như (H.1.1b), đĩ là tín hiệu mà biên độ chỉ cĩ một trong hai giá trị duy nhất, tương ứng với hai trạng thái logic đặc trưng bởi hai số 0 và 1 trong hệ nhị phân. Hệ thống truyền tín hiệu này là hệ thống truyền nhị phân. Trong các hệ thống truyền số, ta cịn gặp tín hiệu cĩ dạng như (H.1.1c). Ðây chưa phải là tín hiệu số nhưng nĩ cũng chỉ cĩ các giá trị nhất định mà người ta cĩ thể số hĩa bằng các số nhị phân nhiều bít hơn. Trong trường hợp của (H 1.1c) tín hiệu cĩ thể cĩ một trong bốn giá trị 0, 1, 2, 3; để cĩ thể mã hĩa tín hiệu này cần các số nhị phân hai bít, hệ thống truyền tín hiệu này là hệ thống truyền nhị phân hai bít. (a) (b) (c) (H 1.1) Tín hiệu trên đường truyền, gọi là sĩng mang, cĩ thể là loại tương tự hay số và được dùng để truyền dữ liệu tương tự hay dữ liệu số. Thí dụ: Tiếng nĩi là loại dữ liệu tương tự và được truyền trên hệ thống điện thoại bởi tín hiệu tương tự (H 1.2a); những dữ liệu cĩ nguồn gốc là số, thí dụ như mã ASCII của các ký tự được biểu diễn dưới dạng những xung điện nhị phân được truyền bởi tín hiệu tương tự nhờ MODEM (Modulator/Demodulator) (H 1.2b). Tín hiệu tương tự sẽ qua mạch CODEC (Coder/Decoder) để được số hĩa (H 1.2c) và dữ liệu số cĩ thể được truyền thẳng qua hệ thống số (H 1.2d). Nguồn Tín hiệu truyền Tiếng nĩi → ðIỆN THOẠI → Tín hiệu tương tự (a) Tín hiệu số → MODEM → Tín hiệu tương tự (b) Tín hiệu tương tự → CODEC → Tín hiệu số (c) Dữ liệu số → H. T. SỐ → Tín hiệu số (d) (H 1.2) - Nhiễu: là các tín hiệu ngồi ý muốn, xuất hiện trong hệ thống hoặc trên đường truyền. Dưới ảnh hưởng của nhiễu, tín hiệu tương tự bị biến dạng và tín hiệu số cĩ thể bị lỗi. - Cường độ tín hiệu: Cường độ của tín hiệu thường được biểu diễn bởi cơng suất hoặc điện áp trên tổng trở tải của nĩ. Ta phải nĩi tín hiệu cĩ cơng suất 133mW hoặc cĩ biên độ 100mV trên tổng trở 75Ω . - Tỉ số cườnng độ hai tín hiệu: dùng mơ tả độ lợi hoặc độ suy giảm của hệ thống, thường được biểu diễn bằng đơn vị Decibel (dB) xác định theo thang logarithm: Tỉ số tín hiệu = 10log dB Sự tiện lợi của đơn vị dB là người ta cĩ thể xác định độ lợi (hay độ suy giảm) của một hệ thống gồm nhiều tầng nối chuỗi (cascade) bằng cách cộng các độ lợi của các tầng với nhau. Người ta thường biểu thị cơng suất tuyệt đối của một tín hiệu bằng cách so sánh với một tín hiệu chuẩn cĩ cơng suất 1W : Cơng suất tín hiệu = 10log dB Ngồi ra, người ta cịn dùng đơn vị dBm để xác định cường độ tín hiệu so với tín hiệu chuẩn cĩ cơng suất 1mW : Cơng suất tín hiệu = 10log Bm Một tín hiệu cĩ cơng suất 1W tương đương với 0 dB và 30dBm. Thí dụ: Tín hiệu cĩ biên độ 100mV ở 75Ω tương đương với 0,133 mW, tính theo dBm là: 10log(0,133/1mW) = - 8,76 dBm. Dấu trừ cho biết mức tín hiệu là 8,76 dBm dưới 1mW. Lưu ý, trong chuyển đổi đơn vị phải để ý đến tổng trở tải của tín hiệu. Biểu thức P = ( V2/R ) cĩ thể được dùng để tính điện áp hiệu dụng hoặc tỉ số điện áp. Trong các hệ thống điện thoại tổng trở tải thường dùng là 600Ω. Thí dụ: Tín hiệu 100mV trên tải 75Ω tương đương với 282mV, nếu tải là 600Ω. Thật vậy, ở 600Ω, điện áp của tín hiệu xác định bởi : V2 = P.R = 0,133.10-3.600 = 0,079 = 0,282 V = 282 mV V = Nếu các tín hiệu cĩ chung tổng trở tải thì : Tỉ số tín hiệu = 20log dB - Tỉ số tín hiệu nhiễu SNR (Signal to Noise Ratio) Ðể đánh giá chất lượng của tín hiệu và cũng là chất lượng của hệ thống truyền tín hiệu đĩ người ta dùng tỉ số tín hiệu trên nhiễu SNR. Ðây là tỉ số cơng suất tín hiệu cĩ ích trên cơng suất tín hiệu nhiễu, thường tính bằng dB (hoặc dBm). Nếu tín hiệu 2 dBm cĩ mức nhiễu là -20 dBm, thì tỉ số SNR là 22 dBm. Nĩi cách khác mức tín hiệu lớn hơn mức nhiễu 22 dBm. Thí dụ: Với tín hiệu số như (H.1.1b), SNR tối thiểu phải là bao nhiêu để cĩ thể phân biệt được tín hiệu một cách rõ ràng (ảnh hưởng của nhiễu cịn chấp nhận được)? Ðối với tín hiệu như (H.1.1b), giả sử biên độ ứng với mức 1 là 1 V và 0 V cho mức 0, một lỗi sẽ phát sinh nếu mức 0 được phát đi mà nhiễu cĩ giá trị dương lớn hơn 0,5 V và nếu mức 1 phát đi mà nhiễu cĩ biên độ âm và trị tuyệt đối lớn hơn 0,5 V. Như vậy giá trị tối đa cho phép của nhiễu là 0,5 V so với trị tối đa của tín hiệu là 1 V và tỉ số SNR tối thiểu là: SNRMIN = Một hệ thống hay mạch tốt khi cĩ khả năng nâng cao tỉ số tín hiệu nhiễu SNR theo yêu cầu. 1.2.2 Băng thơng : - Băng thơng của tín hiệu là dải tần số trong đĩ chứa hầu hết cơng suất của tín hiệu. Khái niệm này cho ta xác định phổ tần hữu ích của tín hiệu nếu tín hiệu đĩ chứa một phổ tần quá rộng. - Băng thơng của kênh truyền là dải tần số của tín hiệu mà độ suy giảm khoảng vài dB (thường là 3 dB) so với giá trị cực đại khi tín hiệu đĩ truyền qua hệ thống. Ðộ suy giảm 3 dB tương ứng với điểm nửa cơng suất. Một kênh truyền tốt phải cĩ băng thơng lớn hơn băng thơng của tín hiệu, điều này khiến cho tín hiệu được tái tạo khơng bị méo dạng và suy giảm đáng kể trong quá trình truyền. 1.2.3 Hình trạng hệ thống và các phương thức liên lạc : Về hình trạng, hệ thống thơng tin cĩ thể cĩ dạng : - Ðiểm - điểm (Point to point): Thí dụ liên lạc giữa máy tính và máy in - Nhiều điểm (Multipoint): Hệ thống nhiều điểm cĩ thể cĩ một trong các dạng: sao (star), vịng (ring) và multidrop * Mạng hình sao (H 1.3a): Thuận lợi trong liên lạc vì đài thứ cấp truy xuất trực tiếp đài sơ cấp nhưng giá thành cao vì phải sử dụng đường dây riêng. * Mạng vịng (H 1.3b): Thơng tin phải đi theo vịng từ đài sơ cấp đến đài thứ cấp. Nếu cĩ một đài hỏng, hệ thống ngưng làm việc. * Mạng multidrop (H 1.3c): Các đài thứ cấp nối chung một đường dây vào trạm sơ cấp Về phương thức thức liên lạc, giữa các máy phát và thu trong một hệ thống thơng tin cĩ thể thực hiện theo 1 trong 4 phương thức: - Ðơn cơng (Simplex transmission, SX): thơng tin chỉ truyền theo một chiều. Nếu lỗi xảy ra máy thu khơng cĩ cách nào yêu cầu máy phát phát lại. Trong hệ thống này thường máy thu cĩ trang bị thêm bộ ROP (Read Only Printer) để hiển thị thơng tin nhận được. - Bán song cơng (Half duplex transmission, HDX): Tín hiệu truyền theo hai hướng nhưng khơng đồng thời. Hệ thống thơng tin dùng Walkie - Talkie là một thí dụ của phương thức liên lạc bán song cơng. Các máy truyền bán song cơng cĩ một nút ấn để phát (push to send), khi ở chế độ phát thì phần thu bị vơ hiệu hĩa và ngược lại. - Song cơng (full duplex transmission, FDX): Tín hiệu truyền theo hai chiều đồng thời. Hệ thống này thường cĩ 4 đường dây, 2 dây cho mỗi chiều truyền. Phương thức này được dùng trong hệ thống điểm - điểm (point to point) - Song cơng tồn phần (Full/Full-duplex, F/FDX): Ðài sơ cấp cĩ khả năng phát tín hiệu tới một đài thứ cấp đồng thời nhận thơng tin từ một đài thứ cấp khác. Phương thức này giới hạn trong hệ thống nhiều điểm (multipoint) (H 1.3) 1.2.4 Các phương pháp truyền : Ðể truyền tín hiệu người ta cĩ thể dùng một trong hai phương pháp: phương pháp truyền dải nền và phương pháp điều chế. - Phương pháp truyền dải nền : Tín hiệu được truyền cĩ cùng dải tần với tín hiệu nguồn. Thí dụ trong điện thoại, tín hiệu âm thanh hữu ích cĩ tần số trong khoảng 300-3000 Hz được truyền đi mà khơng cĩ sự biến đổi nào về phổ tần của nĩ. - Phương pháp điều chế : Ðây là phương pháp cho phép dời phổ tần của tín hiệu nguồn đến một khoảng tần số khác phù hợp với kênh truyền và tránh được nhiễu do giao thoa (nghĩa là các phổ tần cách nhau một khoảng đủ để khơng chồng lên nhau). 1.2.5 Các phương pháp dồn kênh : Ðể cĩ thể truyền nhiều tín hiệu cĩ cùng dải nền (nhiều kênh) trên một đường truyền mà khơng gây ảnh hưởng lẫn nhau, người ta phải dồn kênh. Cĩ hai phương pháp dồn kênh: phương pháp đa hợp phân tần số và phương pháp đa hợp phân thời gian . (H 1.4) mơ tả hai phương pháp dồn kênh. (H 1.4) - Dồn kênh theo phương pháp đa hợp phân thời gian (TDM: Time Division Multiplexing) (H 1.5) minh họa phương pháp TDM . (H 1.5) Khĩa chuyển mạch được sử dụng để nối tuần tự mỗi tín hiệu cần truyền đến đường truyền trong một khoảng thời gian nhất định. Dĩ nhiên các khĩa chuyển mạch ở máy phát (dồn kênh) và máy thu (phân kênh) phải hoạt động đồng bộ để các máy thu thu đúng tín hiệu của nĩ. - Dồn kênh theo phương pháp đa hợp phân tần số (FDM: Frequency Division Multiplexing). (H 1.6) minh họa phương pháp FDM cho 3 kênh truyền (3 tín hiệu tương tự). Tần số sĩng mang của mỗi bộ điều chế của mỗi kênh được chọn lựa sao cho mỗi tín hiệu đã được điều chế chiếm một dải tần riêng trong cả phổ tần của đường truyền và phải được cách ly theo qui định. Ðể thực hiện được việc này người ta dùng các mạch cộng hưởng LC cĩ tần số cộng hưởng khác nhau cho mỗi kênh truyền. Các hệ thống truyền thanh và truyền hình sử dụng phương pháp dồn kênh này. (H 1.6) 1 . 3 HỆ THỐNG TRUYỀN TƯƠNG TỰ : (H 1.7) mơ tả một hệ thống truyền tương tự dùng phương pháp điều chế (nếu truyền dải nền thì khơng cần bộ điều chế và giải điều chế). Trong hệ thống này tín hiệu trên đường truyền là tín hiệu tương tự. Bộ phận chuyển đổi ở máy phát biến tin tức thành tín hiệu tương tự, sau khi được xử lý (như lọc, khuếch đại, phối hợp trở kháng.....) sẽ qua bộ phận điều chế để dời phổ tần; cuối cùng bộ phận giao tiếp chuẩn bị tín hiệu phát tương thích với mơi trường truyền hay kênh truyền. Các cơng việc được thực hiện theo chiều ngược lại ở máy thu. (H 1.7) 1 . 4 HỆ THỐNG TRUYỀN SỐ : 1.4.1 Sơ đồ khối . 1.4.2 Vận tốc truyền tín hiệu . 1.4.3 Truyền nối tiếp và song song . 1.4.4 Truyến đồng bộ và bất đồng bộ . 1.4.1 Sơ đồ khối : (H 1.8) mơ tả một hệ thống truyền số. Tín hiệu trên đường truyền của hệ thống là tín hiệu số, tức các điện áp tương ứng cho các mức 0 và 1 của các mã nhị phân biểu thị cho tin tức. Bộ phận chính của hệ thống là bộ phận biến đổi A→D (Analog to Digital Converter, ADC) ở máy phát (biến tín hiệu tương tự thành tín hiệu số) và biến đổi D→A (Digital to Analog Converter, DAC) ở máy thu (biến tín hiệu số thành tín hiệu tương tự). Việc truyền tín hiệu số được thực hiện bằng cách phát tuần tự các mã nhị phân này. (H 1.8) 1.4.2 Vận tốc truyền tín hiệu (Baud rate) : Một trong những đặc trưng quan trọng để đánh giá chất lượng một hệ thống truyền số là vận tốc truyền tín hiệu, được tính bằng baud. Baud là vận tốc thay đổi trạng thái sĩng mang (số lần thay đổi sĩng mang trong một giây) cịn gọi là vận tốc điều chế (baud rate). Trong thực tế người ta hay dùng đơn vị bit/s (bps) là vận tốc truyền bit (bit rate), tức số bit mà hệ thống truyền trong một giây. Trong hệ thống truyền nhị phân (tín hiệu cần truyền cĩ dạng (H 1.1b)), sĩng mang chỉ được điều chế bởi một trong hai trạng thái của tín hiệu, vận tốc bit và vận tốc tín hiệu bằng nhau (số bit/s = số baud). Trong hệ thống truyền nhị phân hai bit (Thí dụ, dùng số nhị phân hai bit mã hĩa tín hiệu cĩ dạng (H 1.1c)), số lượng bit sẽ gấp đơi số tín hiệu (vận tốc thay đổi bit nhanh gấp đơi vận tốc thay đổi sĩng mang), như vậy số bit/s gấp đơi số baud. Thí dụ : Tính vận tốc truyền tín hiệu (H 1.1c), nếu thời gian tương ứng với một giá trị của tín hiệu là T = 0,0001s. Vận tốc truyền tín hiệu = số baud = 1/T = 1/0,0001 = 10.000 baud. Vận tốc truyền bit br = 2.baud = 20.000 bit/s 1.4.3 Truyền nối tiếp và song song : Tùy theo cách thức đưa tín hiệu ra đường truyền mà ta cĩ hai cách truyền: song song và nối tiếp. (H.1.8) mơ tả hai cách truyền. - Truyền nối tiếp: tín hiệu lần lượt được phát đi từng bít trên cùng một đường dây. Tốc độ truyền chậm nhưng ít tốn kém hơn so với cách truyền song song. - Truyền song song: mã ký tự được gửi đi dưới dạng song song, nghĩa là các bít được phát đi đồng thời trên các đường truyền. Tốc độ truyền song song khá nhanh nhưng phải tốn nhiều đường dây. Do đĩ, cách truyền này được dùng trong thực tế khi phần phát và thu ở gần nhau. (a) (b) (H1.9) 1.4.4 Truyền đồng bộ và bất đồng bộ : Trong các hệ thống truyền số các tín hiệu cĩ thể truyền theo chế độ đồng bộ và bất đồng bộ. Hai chế độ truyền này khác nhau chủ yếu ở việc thực hiện sự đồng bộ và do đĩ đưa tới cách định dạng tín hiệu truyền khác nhau. - Truyền đồng bộ: Trong chế độ đồng bộ dữ liệu truyền được hình thành theo các dạng cố định. Thí dụ các ký tự được mã hố bằng mã ASCII và bản tin được truyền thành từng khối (block), sự đồng bộ được thực hiện ở những khoảng thời gian giữa các khối của bản tin. Do truyền một lần cả bản tin nên vận tốc truyền khá lớn, từ 2400 bps, 4800 bps, 9600 bps cho đến hằng Mbps. Một bất lợi của cách truyền đồng bộ là máy phát phải gửi tín hiệu xung đồng hồ để đồng bộ máy thu. Nếu việc này khơng thực hiện được thì ở máy thu phải thiết kế một vịng khĩa pha (PLL) để phục hồi xung đồng bộ từ dịng dữ liệu. - Truyền bất đồng bộ: Trong chế độ bất đồng bộ dạng của dữ liệu truyền khơng cố định. (H 1.10) cho ta 3 dạng của tín hiệu thường gặp trong cách truyền bất đồng bộ. (H 1.10a) là 3 bản tin a,b,c được truyền tuần tự. Các bản tin dài ngắn khác nhau và cách nhau khơng đều. (H 1.10b) là trường hợp thời gian T của các bản tin giống nhau nhưng khoảng cách các bản tin thì bất kỳ, khơng phải là bội số của T. Trong hai trường hợp này băng thơng cần thiết tùy thuộc vào dữ liệu. (H 1.10c) là một dạng khác của tín hiệu thường gặp trong các bản tin phát bằng phương pháp quét (thí dụ trong các máy FAX). Trong trường hợp này băng thơng của hệ thống tùy thuộc vào độ phân giải tín hiệu chứ khơng tùy thuộc vào dữ liệu. Trong tất cả các trường hợp để tạo sự đồng bộ máy phát phải gửi kèm các xung đồng bộ ở đầu và cuối mỗi ký tự (trong (H 1.10a) đĩ là các xung S hoặc T ). (H 1.10) 1.5 HỆ THỐNG MỞ VÀ MƠ HÌNH OSI : Sự phát triển của lãnh vực thơng tin liên lạc với kỹ thuật truyền số liệu đã trở nên phổ biến trên tồn cầu. Việc thơng tin ngày càng nhiều, yêu cầu về độ chính xác và độ tin cậy ngày càng cao. Ðể bảo đảm điều này các hệ thống thơng tin phải tuân thủ một số qui định về tất cả các khía cạnh như tốc độ truyền, phương pháp mã hĩa, qui tắc gán địa chỉ, các biện pháp thực hiện khi cĩ lỗi v. v . . . Tập hợp tất cả các qui định mà các hệ thống thơng tin phải tuân theo gọi là các giao thức (protocols). Nhờ cĩ giao thức, các hệ thống khơng tương thích nhau cĩ thể liên lạc với nhau. Ðối với một hệ thống chỉ cĩ hai phần tử thì giao thức rất đơn giản. Vấn đề trở nên phức tạp và khĩ khăn khi chủng loại các hệ thống và các phần tử của hệ thống tăng lên. Một tập hợp các giao thức cho phép hai hệ thống bất kỳ nào cũng cĩ thể liên lạc với nhau bất chấp cấu trúc bên trong của nĩ, gọi là một HỆ THỐNG MỞ. Tổ chức định chuẩn quốc tế (International Standards Organization, ISO) đã quan tâm tới vấn đề kết nối các thiết bị khác nhau từ năm 1977 và đến năm 1984 thì mơ hình tham chiếu cho việc kết nối các hệ thống mở ra đời, gọi tắt là mơ hình OSI (Reference Model for Open Systems Interconnection). Mơ hình OSI là mơ hình phân tầng được xây dựng dựa trên các nguyên tắc chủ yếu sau đây: - Số tầng càng hạn chế càng tốt - Ranh giới giữa các tầng bảo đảm việc tương tác và mơ tả các dịch vụ là tối thiểu và cĩ thể chuẩn hĩa giao diện tương ứng. - Các chức năng khác nhau và các cơng nghệ sử dụng khác nhau phải được tách biệt trong các tầng khác nhau - Khi thay đổi chức năng hoặc giao thức trong một tầng khơng ảnh hưởng đến các tầng khác. - Mỗi tầng chỉ cĩ ranh giới và giao diện với tầng ngay trên và dưới nĩ. - Cĩ thể chia một tầng thành các tầng con khi cần thiết. Và các tầng con cũng cĩ thể được hủy bỏ trong trường hợp khơng cần nữa. Kết quả ta được mơ hình OSI gồm 7 tầng Tầng cao nhất liên quan đến việc lý giải khái niệm và ngơn ngữ cịn các tầng thấp hơn nĩi về các qui tắc truyền thơng tin giữa các bộ phận (máy phát và máy thu). Trong mỗi tầng ngồi những qui định phải thực hiện ngay trong chính bản thân tầng đĩ cịn cĩ những qui định dịch vụ đưa lên tầng trên kế tiếp. Máy phát và thu cần phải thống nhất các qui tắc áp dụng trong tầng tương ứng, cĩ nghĩa là chúng phải làm việc theo cùng một thể thức. Thơng tin điều khiển của mỗi tầng được ghép vào bản tin ở máy phát và được tách ra ở máy thu ở tầng tương ứng, dĩ nhiên các thơng tin này chỉ được máy thu hiểu khi chúng cùng sử dụng một giao thức. (H 1.11) cho ta thấy sự phân cấp này. Hệ thống A Hệ thống B Tầng 7 Application Kiểu nối logic Tầng 7 Ứng dụng ↓ Tầng 6 Presentation Tầng 6 Trình bày ↓ Tầng 5 Session Tầng 5 Giao dịch ↓ Tầng 4 Transport Tầng 4 Vận chuyển ↓ Tầng 3 Network Tầng 3 Mạng ↓ Tầng 2 Data link Tầng 2 Liên kết DL ↓ Tầng 1 Physical Tầng 1 Vật lý ↓←   → Kết nối vật lý (H 1.11) Tầng 1 : Tầng vật lý (physical layer) Qui định về các tính chất vật lý của hệ thống. Tầng vật lý liên quan đến nhiệm vụ truyền dịng bit khơng cấu trúc qua đường truyền vật lý, truy nhập đường truyền vật lý nhờ các phương tiện cơ, điện, hàm (chức năng), thủ tục. Tầng 2 : Tầng liên kết dữ liệu (data link layer) Cung cấp phương tiện để truyền thơng tin qua liên kết vật lý bảo đảm độ tin cậy. Tầng này qui định các chức năng của kênh số liệu trên một đường truyền giữa hai điểm của hệ thống thí dụ những qui định về sự đồng bộ hĩa, đặc tính của khung dữ liệu, đánh số khung, kiểm tra lỗi, kiểm tra luồng dữ liệu trong quá trình liên lạc. Tầng 3: Tầng mạng (network layer) Qui định các chức năng mạng như chọn đường, gán địa chỉ, chuyển tiếp thơng tin, thực hiện việc kiểm sốt luồng dữ liệu, tách/hợp dữ liệu khi cần thiết. Giao thức trong tầng này điều khiển việc truyền thơng qua các mạng trong hệ thống với cơng nghệ chuyển mạch thích hợp. Tầng 4 : Tầng vận chuyển (transport layer) Qui định các chức năng truyền dữ liệu giữa hai đầu mút (end to end) như tốc độ truyền, xếp thứ tự các thơng tin, tổ chức sự tái tạo bản tin (kiểm tra lỗi, phục hồi các từ bị mất trong quá trình liên lạc...). Giao thức trong tầng này cũng cĩ thể thực hiện việc ghép kênh (multiplexer), tách/hợp dữ liệu khi cần thiết. Tầng 5 : Tầng giao dịch (session layer) Cung cấp phương tiện quản lý truyền thơng giữa các ứng dụng. Giao thức của tầng này qui định các thủ tục thiết lập cuộc đối thoại giữa hai bên, cĩ trách nhiệm thiết lập, duy trì, đồng bộ hĩa và kết thúc cuộc đối thoại. Tầng 6 : Tầng trình bày (presentation layer) Tầng này xác định các qui tắc ngơn ngữ và cĩ trách nhiệm đảm bảo số liệu thu được cĩ một cú pháp cĩ thể dịch được trong quá trình ứng dụng. Nĩi cách khác tầng này mơ tả các phương pháp trình bày dữ liệu như mã hĩa, giải mã, nén dữ liệu....Thí dụ mã ASCII 8 bít dùng cho màn hình là một qui định thuộc tầng 6 này. Tầng 7: Tầng ứng dụng (application layer) Tầng này qui định các ứng dụng thực tế, đưa ra các thủ tục cho việc xử lý số liệu của bản thân người sử dụng như cách thức xử lý từ, soạn văn bản....Tầng này cũng qui định những thủ tục cho người sử dụng cĩ thể truy nhập được vào mơi trường. Tầng ứng dụng là tầng duy nhất khơng phải phục vụ tầng trên. - CHƯƠNG 2 MÃ HỐ VÀ ðIỀU CHẾ . Nội dung: 2.1 PHỔ TẦN CỦA TÍN HIỆU . 2.2 MÃ HĨA . 2.3 ðIỀU CHẾ . ---------------------------------------------------------------------------------------------------------------- Trong truyền thơng, tin tức và dữ liệu là tất cả những gì cần trao đổi, chúng cĩ thể là tiếng nĩi, hình ảnh, tập hợp các con số, các ký hiệu, các đại lượng đo lường . . . được đưa vào máy phát để phát đi hay nhận được ở máy thu. Tín hiệu chính là tin tức đã được xử lý để cĩ thể truyền đi trên hệ thống thơng tin. Việc xử lý bao gồm chuyển đổi, mã hĩa và điều chế. Chuyển đổi là biến các tin tức dưới dạng khơng điện thành ra tín hiệu điện. Mã hĩa là gán cho tín hiệu một giá trị nhị phân và đặc trưng bởi các mức điện áp cụ thể để cĩ thể truyền trên kênh truyền và phục hồi ở máy thu. Ðiều chế là dùng tín hiệu cần truyền để làm thay đổi một thơng số nào đĩ của một tín hiệu khác, tín hiệu này thực hiện nhiệm vụ mang tín hiệu cần truyền đến nơi thu nên được gọi là sĩng mang (carrier wave). Mục đích của sự điều chế là dời phổ tần của tín hiệu cần truyền đến một vùng phổ tần khác thích hợp với tính chất của đường truyền và nhất là cĩ thể truyền đồng thời nhiều kênh cùng một lúc (đa hợp phân tần số). Chương này đề cập đến sự điều chế và mã hĩa. Nhưng trước tiên, chúng ta cần nhắc lại một số tính chất của tín hiệu qua việc phân tích tín hiệu khơng sin thành tổng của các tín hiệu hình sin và lưu ý đến mối quan hệ tần số-thời gian của tín hiệu. 2 . 1 PHỔ TẦN CỦA TÍN HIỆU : Trong một hệ thống thơng tin tồn tại 3 dạng tín hiệu với phổ tần khác nhau: - Loại thứ nhất là các tín hiệu cĩ tính tuần hồn cĩ dạng hình sin hoặc khơng. Một tín hiệu khơng sin là tổng hợp của nhiều tín hiệu hình sin cĩ tần số khác nhau. Kết quả này cĩ được bằng cách dùng chuỗi Fourier để phân tích tín hiệu. - Loại thứ hai là các tín hiệu khơng cĩ tính tuần hồn mà cĩ tính nhất thời (thí dụ như các xung lực), loại tín hiệu này được khảo sát nhờ biến đổi Fourier. - Loại thứ ba là tín hiệu cĩ tính ngẫu nhiên, khơng được diễn tả bởi một hàm tốn học nào. Thí dụ nhu các loại nhiễu, được khảo sát nhờ phương tiện xác suất thống kê. Các loại tín hiệu, nĩi chung, cĩ thể được xét đến dưới một trong hai lãnh vực : - Lãnh vực thời gian: Trong lãnh vực này tín hiệu được diễn tả bởi một hàm theo thời gian, hàm này cho phép xác định biên độ của tín hiệu tại mỗi thời điểm. - Lãnh vực tần số : Trong lãnh vực này người ta quan tâm tới sự phân bố năng lượng của tín hiệu theo các thành phần tần số của chúng và được diễn tả bởi phổ tần. Trong giới hạn của mơn học, chúng ta chỉ đề cập đến hai loại tín hiệu đầu. 2.1.1 Phổ tần gián đoạn 2.1.2 Phổ tần liên tục . 2.1.1 Phổ tần gián đoạn : Tín hiệu cĩ tính tuần hồn đơn giản nhất là tín hiệu hình sin v(t)=Vm sin(ωt+φ) = Vmsin(2πft+φ) Tín hiệu này cĩ phổ tần là một vạch duy nhất cĩ biên độ Vm tại tần số f (H 2.1) (H2.1) Các dạng tín hiệu tuần hồn khác cĩ thể phân tích thành tổng các tín hiệu hình sin, như vậy phổ tần của chúng phức tạp hơn, gồm nhiều vạch ở các tần số khác nhau. Tín hiệu thường gặp cĩ dạng hình chữ nhật mà bởi phép phân tích thành chuỗi Fourier ta thấy phổ tần bao gồm nhiều vạch ở các tần số cơ bản f và các họa tần 3f, 5f, 7f .... (H 2.2). (a) (H 2.2) (b) Tín hiệu (H 2.2.a) phân tích thành chuỗi Fourier: v = Với ω = 2π / T = 2πf T & f lần lượt là chu kỳ và tần số của tín hiệu chữ nhật. Lưu ý , nếu dời tín hiệu (H 2.2.a) lên một khoảng V theo trục tung thì phổ tần cĩ thêm thành phần một chiều (H 2.3) (a) (H 2.3) (b) v = V + Xét trường hợp chuỗi xung chữ nhựt với độ rộng τ << T , ta cĩ tín hiệu và phổ ở (H 2.4) v = với x = τπ / T (a) ( b) Phổ tần trong trường hợp τ = 0,1T (H 2.4) Nhận thấy biên độ của họa tần thứ n xác định bởi: Vn= (H 2.4.b) là phổ tần của tín hiệu (H 2.4.a) cho trường hợp τ = 0,1 T. Trong trường hợp này tần số đầu tiên của tín hiệu cĩ biên độ đạt trị 0 là 10f. Nếu xem băng thơng BW của tín hiệu là khoảng tần số mà biên độ tín hiệu đạt giá trị 0 đầu tiên (vì năng lượng tín hiệu tập trung trong khoảng tần số này) ta cĩ: BW xác định bởi: sin(nx) = 0 nx = π ⇒ nπτ / T = π ⇒ n / T =1/τ hay BW=nf = n / T =1/τ 2.1.2 Phổ tần liên tục : Ðối với chuỗi xung ở trên khi T càng lớn khoảng cách phổ vạch càng thu hẹp lại và khi T → ∞, chuỗi xung trở thành một xung duy nhất và phổ vạch trở thành một đường cong liên tục cĩ dạng bao hình của biên độ phổ trước đây (H 2.5). Ðường cong xác định bởi: V(f) = V τ   (a) (H 2.5) (b) 2.2. MÃ HỐ: Việc tạo mã để cĩ tín hiệu trên các hệ thống số cĩ thể thực hiện một cách đơn giản là gán một giá trị điện thế cho một trạng thái logic và một trị khác cho mức logic cịn lại. Tuy nhiên để sử dụng mã một cách cĩ hiệu quả, việc tạo mã phải dựa vào một số tính chất sau: - Phổ tần của tín hiệu: Nếu tín hiệu cĩ chứa tần số cao thì băng thơng của tín hiệu và của hệ thống phải rộng Nếu tín hiệu cĩ thành phần DC cĩ thể gây khĩ khăn trong ghép nối, thí dụ khơng thể ghép tín hiệu cĩ thành phần DC qua biến thế và kết quả là khơng cách ly điện được. Trong thực tế, sự truyền thơng xấu nhất ở các cạnh của băng thơng. Vì các lý do trên, một tín hiệu tốt phải cĩ phổ tần tập trung ở giữa một băng thơng khơng quá rộng và khơng nên chứa thành phần DC. - Sự đồng bộ Thường máy thu phải cĩ khả năng nhận ra điểm bắt đầu và kết thúc của một bít để thực hiện sự đồng bộ với máy phát. Nên nhớ là trong chế độ truyền đồng bộ, máy phát và thu khơng tạo ra xung đồng hồ riêng rẻ mà máy thu phải phục hồi xung này từ chuỗi dữ liệu phát để sử dụng. Như vậy tín hiệu truyền phải tạo điều kiện cho máy thu phục hồi xung đồng hồ ẩn trong chuỗi dữ liệu, cụ thể là phải cĩ sự biến đổi giữa các mức thường xuyên. - Khả năng dị sai Ðộ tin cậy trong một hệ thống thơng tin là rất cần thiết do đĩ máy thu phải cĩ khả năng dị sai để sửa chữa mà việc này cĩ thực hiện dễ dàng hay khơng cũng tùy vào dạng mã. - Tính miễn nhiễu và giao thoa Các dạng mã khác nhau cho khả năng miễn nhiễu khác nhau. Thí dụ mã Bipolar-AMI là loại mã cĩ khả năng phát hiện được nhiễu. - Mức độ phức tạp và giá thành của hệ thống Các đặc tính này của hệ thống cũng tùy thuộc vào dạng mã rất nhiều. 2.2.1 Các dạng mã phổ biến. 2.2.2 Kỹ thuật ngẫu nhiên hĩa. 2.2.1 Các dạng mã phổ biến : Dưới đây giới thiệu một số dạng mã thơng dụng và được sử dụng cho các mục đích khác nhau tùy vào các yêu cầu cụ thể về các tính chất nĩi trên (H 2.6) - Nonreturn - to - zero - Level (NRZ - L) 0 = mức cao 1 = mức thấp Ðây là dạng mã đơn giản nhất, hai trị điên thế cùng dấu (đơn cực) biểu diễn hai trạng thái logic. Loại mã này thường được dùng trong việc ghi dữ liệu lên băng từ. - Nonreturn - to - zero inverted (NRZI) 0 = chuyển mức điện thế ở đầu bít 1 = khơng chuyển mức điện thế ở đầu bít (H 2.6) NRZI là một thí dụ của mã vi phân: Sự mã hĩa tùy vào sự thay đổi trạng thái của các bít liên tiếp chứ khơng tùy thuộc vào bản thân bít đĩ. Loại mã này cĩ lợi điểm là khi giải mã máy thu dị sự thay đổi trạng thái của tín hiệu thay vì so sánh tín hiệu với một trị ngưỡng để xác định trạng thái logic của tín hiệu đĩ và kết quả cho độ tin cậy cao hơn. - Bipolar - AMI 0 = khơng tín hiệu (hiệu thế = 0) 1 = hiệu thế âm hoặc dương, luân phiên thay đổi với chuỗi bít 1 liên tiếp - Pseudoternary 0 = hiệu thế âm hoặc dương, luân phiên thay đổi với chuỗi bít 0 liên tiếp 1 = khơng tín hiệu (hiệu thế = 0) Hai loại mã cĩ cùng tính chất là sử dụng nhiều mức điện thế để tạo mã (Multilevel Binary), cụ thể là 3 mức: âm, dương và khơng. Lợi điểm của loại mã này là: - Dễ tạo đồng bộ ở máy thu do cĩ sự thay đổi trạng thái của tín hiệu điện mặc dù các trạng thái logic khơng đổi (tuy nhiên điều này chỉ thực hiện đối với một loại bit, cịn loại bít thứ hai sẽ được khắc phục bởi kỹ thuật ngẫu nhiên hĩa) - Cĩ điều kiện tốt để dị sai do sự thay đổi mức điện thế của các bít liên tiếp giống nhau nên khi cĩ nhiễu xâm nhập sẽ tạo ra một sự vi phạm mà máy thu cĩ thể phát hiện dễ dàng. Một khuyết điểm của loại mã này là hiệu suất truyền tin kém do phải sử dụng 3 mức điện thế . - Manchester 0 = Chuyển từ cao xuống thấp ở giữa bít 1 = Chuyển từ thấp lên cao ở giữa bít - Differential Manchester Luơn cĩ chuyển mức ở giữa bít 0 = chuyển mức ở đầu bít 1 = khơng chuyển mức ở đầu bít Hai mã Manchester và Differential Manchester cĩ cùng tính chất : mỗi bít được đặc trưng bởi hai pha điện thế (Biphase) nên luơn cĩ sự thay đổi mức điện thế ở từng bít do đĩ tạo điều kiện cho máy thu phục hồi xung đồng hồ để tạo đồng bộ. Do cĩ khả năng tự thực hiện đồng bộ nên loại mã này cĩ tên Self Clocking Codes. Do mỗi bít được mã bởi 2 pha điện thế nên vận tốc điều chế (Modulation rate) của loại mã này tăng gấp đơi so với các loại mã khác, cụ thể , giả sử thời gian của 1 bít là T thì vận tốc điều chế tối đa (ứng với chuỗi xung 1 hoặc 0 liên tiếp) là 2/T. 2.2.2 Kỹ thuật ngẫu nhiên hĩa (Scrambling techniques) : Ðể khắc phục khuyết điểm của loại mã AMI là cho một mức điện thế khơng đổi khi cĩ một chuỗi nhiều bít 0 liên tiếp, người ta dùng kỹ thuật ngẫu nhiên hĩa. Nguyên tắc của kỹ thuật này là tạo ra một sự thay đổi điện thế giã bằng cách thay thế một chuỗi bít 0 bởi một chuỗi tín hiệu cĩ mức điện thế thay đổi, dĩ nhiên sự thay thế này sẽ đưa đến các vi phạm luật biến đổi của bít 1, nhưng chính nhờ các bít vi phạm này mà máy thu nhận ra để cĩ biện pháp giải mã thích hợp. Dưới đây giới thiệu hai dạng mã đã được ngẫu nhiên hĩa và được dùng rất nhiều trong các hệ thơng tin với khoảng cách rất xa và vận tốc bit khá lớn: - B8ZS : là mã AMI cĩ thêm tính chất: chuỗi 8 bít liên tục được thay bởi một chuỗi với 2 mã vi phạm luật đảo bít 1 - Nếu trước chuỗi 8 bit 0 là xung dương, các bit 0 này được thay thế bởi 000 + - 0 - + - Nếu trước chuỗi 8 bit 0 là xung âm, các bit 0 này được thay thế bởi 000 - + 0 + - - HDB3 : là mã AMI cĩ thêm tính chất: chuỗi 4 bít liên tục được thay bởi một chuỗi với 1 mã vi phạm luật đảo bít 1 Sự thay thế chuỗi 4 bít của mã HDB3 cịn theo qui tắc sau: Cực tính của xung trước đĩ Số bít 1 từ lần thay thế cuối cùng Lẻ chẵn - + 000- +00+ 000+ -00- Ngồi ra hệ thống Telco cịn cĩ hai loại mã là B6ZS và B3ZS dựa theo qui luật sau: - B6ZS: Thay chuỗi 6 bit 0 bởi 0 - + 0 + - hay 0 + - 0 - + sao cho sự vi phạm xảy ra ở bit thứ 2 và thứ 5 - B3ZS: Thay chuỗi 3 bit 0 bởi một trong các chuỗi: 00 +, 00 -, - 0 - hay + 0 +, tùy theo cực tính và số bit 1 trước đĩ (tưong tự như HDB3). Lưu ý là kỹ thuật ngẫu nhiên hĩa khơng làm gia tăng lượng tín hiệu vì chuỗi thay thế cĩ cùng số bit với chuỗi được thay thế. (H 2.7) là một thí dụ của mã B8ZS và HBD3. B = Valid bipolar signal; V = Bipolar violation (H 2.7) 2.3 ÐIỀU CHẾ : Biến điệu hay điều chế là quá trình chuyển đổi phổ tần của tín hiệu cần truyền đến một vùng phổ tần khác bằng cách dùng một sĩng mang để chuyên chở tín hiệu cần truyền đi; mục đích của việc làm này là chọn một phổ tần thích hợp cho việc truyền thơng tin, với các tần số sĩng mang khác nhau người ta cĩ thể truyền nhiều tín hiệu cĩ cùng phổ tần trên các kênh truyền khác nhau của cùng một đường truyền. Một cách tổng quát, phương pháp điều chế là dùng tín hiệu cần truyền làm thay đổi một thơng số nào đĩ của sĩng mang (biên độ, tần số, pha....). Tùy theo thơng số được lựa chọn mà ta cĩ các phương pháp điều chế khác nhau: điều chế biên độ (AM), điều chế tần số (FM), điều chế pha ΦM, điều chế xung PM . . . .. 2.3.1 ðiều chế biên độ 2.3.2 ðiều chế gĩc . 2.3.3 ðiều chế xung . 2.3.1 Ðiều chế biên độ ( Amplitude Modulation, AM ) : Xét tín hiệu cao tần e(t)=Ac cos(ωct +θ) (1) Tín hiệu AM cĩ được bằng cách dùng tín hiệu g(t) làm biến đổi biên độ của e(t). Biểu thức của tín hiệu AM là: eAM(t) = [Ac +g(t)] cosωct (2) Ðể đơn giản, ta bỏ qua θ là lượng khơng đổi trong AM. Những tính chất cơ bản của AM dễ dàng được xác định nếu ta biết tín hiệu g(t). Xét g(t) là tín hiệu hạ tần: g(t)= Em cosωmt (3) Như vậy: eAM(t)=(Ac + Em cosωmt )cosωct = Ac [1+ (Em /Ac )cosωmt ]cosωct =Ac [1+ma cosωmt] cosωct (4) Trong đĩ ma = Em/Ac gọi là chỉ số biến điệu (H 2.8) vẽ dạng sĩng và phổ tần của tín hiệu AM. (a) (H 2.8) (b) Ðể thấy được phổ tần ta triển khai hệ thức (4) eAM(t) = Accosωct + (maAc/2)cos(ωc+ωm)t + (maAc /2)cos(ωc-ωm)t (5) Từ (H 2.8b) ta thấy băng thơng của tín hiệu đã điều chế bằng hai lần tần số của tín hiệu hạ tần và được chia ra làm hai băng cạnh. Ðiều chế biên độ là một quá trình tuyến tính nên mỗi tần số của tín hiệu hạ tần tạo ra một băng thơng và trong trường hợp tín hiệu hạ tần gồm nhiều tần số khác nhau thì băng thơng của tín hiệu biến điệu là: BW = 2fm(max) fm (max) là tần số hạ tần cao nhất. Dữ liệu số cĩ thể được truyền bằng phương pháp điều chế AM, trong trường hợp này gọi là kỹ thuật dời biên (ASK, Amplitude- Shift Keying). Bit 1 được truyền đi bởi sĩng mang cĩ biên độ E1 và bít 0 bởi sĩng mang biên độ E2. (H 2.9) minh họa tín hiệu ASK (H 2.9) 2.3.2 Ðiều chế gĩc (Angle modulation) : Ta cũng bắt đầu với sĩng mang chưa điều chế: e(t)= Accos(ωct + f)= AccosΦ(t) (6) Nếu ωc thay đổi tương ứng với nguồn thơng tin, ta cĩ tín hiệu điều chế tần số (FM) và nếu Φ(t) thay đổi ta cĩ tín hiệu điều chế pha (ΦM). Hai kỹ thuật điều chế này cơ bản giống nhau và được gọi chung là điều chế gĩc. 2.3.2.1 Ðiều chế tần số . 2.3.2.2 Ðiều chế pha . 2.3.2.1 Ðiều chế tần số (FM) : Tần số ω(t) là giá trị biến đổi theo thời gian của Φ(t), nghĩa là: ω(t) = (7) Vậy tần số của tín hiệu chưa điều chế là: ω(t) = (8) Giả sử tín hiệu điều chế là g(t), theo định nghĩa của phép điều chế tần số, tần số tức thời của sĩng mang là: ω(t)=ωc [1+ g(t) ] (9) Thay (9) vào (7): Φ(t) = (10) Thay vào pt (6): eFM(t) = (11) Biểu thức (11) cho thấy tín hiệu g(t) được lấy tích phân trước khi được điều chế. Xét trường hợp g(t) là tín hiệu hạ tần cĩ dạng hình sin: g(t) = cosωm(t) (12) ∆ω là độ di tần và ωm là tần số của tín hiệu hạ tần Ф(t) = = ωct + mf sinωmt với mf = ∆ω /ωm là chỉ số điều chế. Ðĩ là tỉ số của độ di tần và tần số của tín hiệu điều chế (hạ tần). eFM (t) = Ac cos{ ωct + mf sinωmt} (13) Ðể thấy phổ tần của sĩng FM ta triển khai biểu thức (13): eFM (t) = AcJ0(mf) cosωct + AcJ2n(mf) [ cos(ωct + 2ncosωmt) + cos(ωct - 2ncosωmt)] AcJ2n+1(mf) { cos[ωc t + (2n+1)cosωmt] - cos[ωct - (2n+1)cosωmt]} (14) J là hàm Bessel theo mf và n cĩ mọi trị nguyên từ 0 đến ∞. Từ (14) ta thấy sĩng FM gồm thành phần cơ bản cĩ tần số của sĩng mang và biên độ cho bởi số hạng thứ I , J0(mf) , và các băng cạnh cho bởi các số hạng cịn lại. Vì n lấy mọi giá trị từ 0 đến ∞ nên phổ tần của sĩng FM rộng vơ hạn, tuy nhiên do năng lượng tín hiệu giảm rất nhanh với tần số cao nên người ta xem băng thơng trong FM xấp xỉ bằng: BW = 2(mf ωm + ωm ) = 2(∆ω + ωm ) rad/s (H 2.10) cho dạng sĩng và phổ tần của sĩng FM (H2.10) Cũng như trong trường hợp AM, tín hiệu dữ liệu số cũng được truyền bằng phương pháp FM. Kỹ thuật này được gọi là kỹ thuật dời tần (FSK: Frequency- Shift Keying). FSK được dùng rộng rãi trong truyền số liệu. Trong FSK bít 1 được truyền đi bởi tần số fm và bít 0 bởi tần số fs ví dụ, trong hệ thống truyền sử dụng tiêu chuẩn của hảng Bell bít 1 được truyền bởi tần số 1070 Hz (fm) và bít 0 bởi tần số 1270 Hz (fs). (H 2.11) minh họa tín hiệu điều chế FSK (H 2.11) 2.3.2.2 Ðiều chế pha (ФM ) : Từ phương trình (6) nếu gĩc pha Ф(t) thay đổi theo tín hiệu thơng tin ta cĩ điều chế pha. Vậy: ePM (t) = Ac cos[ω ct + mp g(t)] (15) Trong đĩ mp là độ dời pha cực đại Tần số tức thời cho bởi: ω i(t) = dФ(t)/dt = ω c + mp Nếu g(t) cĩ dạng cos ωmt thì: ωi(t) = ωc - mpωmsin ω mt (16) ePM (t) = Ac cos[ωct - mp ωmsin ω mt ] (17) So sánh (17) và (13), xem mp là chỉ số điều chế pha, tương đương với mf trong FM, ta cĩ thể xác định được băng thơng của tín hiệu ФM BW = 2(ω m+ mpω m) rad/s (18) mpωm = ∆ωep là độ di tần tương đương của ФM So sánh (11) và (15) ta thấy kỹ thuật của FM và ФM cĩ cùng cơ sở. Ðiểm khác biệt là trong FM ta lấy tích phân của tín hiệu hạ tần trước khi điều chế cịn trong ФM thì khơng. Ðiều chế pha là kỹ thuật rất tốt để truyền số liệu. Trong kỹ thuật dời pha, PSK (Phase-Shift Keying), các bít 1 và 0 được biểu diễn bởi các tín hiệu cĩ cùng tần số nhưng cĩ pha trái ngược nhau. (H 2.12) mơ tả một tín hiệu FSK. (H 2.12) 2.3.3 ÐIỀU CHẾ XUNG ( PULSE MODULATION) : Ðây là phương pháp dùng tín hiệu hạ tần điều chế sĩng mang là tín hiệu xung (cĩ tần số cao hơn), cịn gọi là phương pháp lấy mẫu tín hiệu hạ tần. Mặc dù các tín hiệu tương tự được lấy mẫu bởi các giá trị rời rạc, nhưng các mẫu này cĩ thể cĩ bất cứ giá trị nào trong khoảng biến đổi của tín hiệu hạ tần nên hệ thống truyền tín hiệu này là hệ thống truyền tương tự chứ khơng phải hệ thống truyền số. Tùy theo thơng số nào của xung thay đổi theo tín hiệu hạ tần, ta cĩ : Ðiều chế biên độ xung (pulse amplitude modulation, PAM), điều chế vị trí xung (pulse position modulation, PPM), điều chế độ rộng xung (pulse width modulation, PWM). 2.3.3.1 Ðiều chế biên độ xung . 2.3.3.2 Ðiều chế thời gian xung . 2.3.3.1 Ðiều chế biên độ xung ( PAM) : Khi một chuỗi xung hẹp với tần số lặp lại cao p(t) được điều chế biên độ bởi tín hiệu sin tần số thấp m(t), ta cĩ sự điều chế biên độ xung. Tín hiệu sau khi điều chế là tích của hai tín hiệu m(t).p(t) cĩ dạng sĩng là các xung với biên độ thay đổi theo dạng sĩng hạ tần m(t) (H 2.13). (H 2.13) a. Mẫu PAM tự nhiên . b. Mẫu PAM đỉnh phẳng. a-/ Mẫu PAM tự nhiên (Natural PAM sampling) : Khi biên độ xung đã điều chế cĩ đỉnh theo dạng của tín hiệu m(t), ta cĩ mẫu PAM tự nhiên (H 2.13). Kết quả của phần 2.1.1 cho thấy tín hiệu p(t) cĩ thể phân tích thành các thành phần: Vo + Σ Vn.cos(nωst) với V0 = Vτ / Ts là thành phần DC và ωs = 2π / Ts là tần số của p(t). Như vậy, m(t).p(t) bao gồm: m(t).Vo = m(t).Vτ / Ts và m(t).ΣVn.cos(nωst) Tĩm lại, tích m(t).p(t) cĩ chứa dạng sĩng của tín hiệu điều chế (tín hiệu cần truyền) trong thành phần tần số thấp m(t).V0 và cĩ thể phục hồi bằng cách cho sĩng mang đã điều chế qua một mạch lọc hạ thơng. Thành phần họa tần cĩ dạng Vnm(t)cos(nωst) tương tự như tín hiệu điều chế 2 băng cạnh triệt sĩng mang (Double Sideband Suppressed Carrier, DSBSC). Phổ tần của tín hiệu PAM với hạ tần là m(t) = sinωmt cĩ dạng như (H 2.14) (H 2.14) Trong (H 2.14) M(f) là phổ tần của tín hiệu dải nền và fm là tần số cao nhất của tín hiệu này. Từ (H 2.14) ta cũng thấy tại sao tần số xung lấy mẫu fs phải ít nhất hai lần lớn hơn fm . Nếu M(f) được phục hồi từ mạch lọc hạ thơng, độ phân cách từ M(f) tới dải tần kế cận phải lớn hơn 0, nghĩa là W > 0 W = fs - fm - fm > 0 hay fs > 2 fm b-/ Mẫu PAM đỉnh phẳng (Flat-top PAM) : Ðây là mẫu PAM được dùng rộng rãi do dễ tạo ra sĩng điều chế. Dạng sĩng cho ở (H 2.15) các xung sau khi điều chế cĩ đỉnh phẳng chứ khơng theo dạng của hạ tần. (H 2.15) Mặc dù khi phục hồi tín hiệu từ mạch lọc hạ thơng sẽ cĩ biến dạng do đoạn đỉnh phẳng nhưng vì bề rộng xung thường rất nhỏ so với chu kỳ Ts nên biến dạng khơng đáng kể. Nếu sự biến dạng là đáng kể thì cũng cĩ thể loại bỏ bằng cách cho tín hiệu đi qua một mạch bù trừ. Tín hiệu PAM ít được dùng để phát trực tiếp do lượng thơng tin cần truyền chứa trong biên độ của xung nên dễ bị ảnh hưởng của nhiễu. PAM thường được dùng như là một bước trung gian trong một phương pháp điều chế khác, gọi là điều mã xung (pulse code modulation, PCM) và được dùng trong đa hợp thời gian để truyền (TDM). 2.3.3.2 Ðiều chế thời gian xung (Pulse -time Modulation, PTM) : Ðiều chế thời gian xung bao gồm bốn phương pháp (H 2.16). Ba phương pháp đầu tập trung trong một nhĩm gọi là điều chế độ rộng xung (Pulse-width modulation, PWM) (H 2.16d, e, f), phương pháp thứ tư là điều chế vị trí xung (Pulse-position modulation, PPM) (H 2.16g). Ba phương pháp điều chế độ rộng xung khác nhau ở điểm cạnh lên, cạnh xuống hay điểm giữa xung được giữ cố định trong khi độ rộng xung thay đổi theo tín hiệu điều chế. Phương pháp thứ tư, PPM là thay đổi vị trí xung theo tín hiệu điều chế trong khi bề rộng xung khơng đổi. (H 2.16) minh họa cho các cách điều chế này. Lưu ý là kỹ thuật PTM tưong tự với điều chế FM và ΦM , tín hiệu cĩ biên độ khơng đổi nên ít bị ảnh hưởng bởi nhiễu. Phổ tần của tín hiệu đã điều chế bằng phương pháp PWM, PPM giống như phổ tần của tín hiệu điều chế FM (H 2.16h), nghĩa là cĩ nhiều họa tần nên khi sử dụng PWM và PPM người ta phải gia tăng tần số xung lấy mẫu hoặc giảm độ di tần (để giới hạn băng thơng của tín hiệu và tăng số kênh truyền). (H 2.16) CHƯƠNG 3 CÁC LOẠI MÃ TRONG TRUYỀN DỮ LIỆU . Nội dung: 3.1 MÃ NHỊ PHÂN CỦA CÁC CHỮ SỐ . 3.2 CÁC MÃ PHÁT HIỆN LỖI . 3.3 MÃ NÉN DỮ LIỆU . 3.4 MẬT MÃ . ---------------------------------------------------------------------------------------------------------------- Tin tức bao gồm các văn bản, số liệu, hình ảnh . . . . cần được mã hĩa bằng tập hợp các số nhị phân trước khi được chuyển đổi thành các tín hiệu số để truyền đi Một yếu tố quan trọng trong hệ thống thơng tin là độ chính xác, thiếu yếu tố này hệ thống xem như khơng cĩ giá trị sử dụng, nên kèm theo bản tin thường phải thêm vào các từ mã cĩ khả năng phát hiện lỗi và thậm chí sửa được lỗi. Ngồi ra, nếu số lượng bít dùng để mã hĩa cùng một đối tượng càng ít thì với cùng vận tốc truyền, lượng thơng tin truyền của hệ thống càng lớn mà lại hạn chế được khả năng xảy ra lỗi. Do đĩ việc giảm số lượng bít dùng mã hĩa cũng là một vấn đề cần được quan tâm. Chương này bàn đến một số phương pháp mã hĩa dữ liệu phổ biến để tạo các loại mã cĩ khả năng phát hiện lỗi, phát hiện và sửa lỗi, các loại mã nén. 3.1 MÃ NHỊ PHÂN CỦA CÁC CHỮ SỐ : Ðể biểu diễn các chữ và số người ta dùng các mã nhị phân. Một số nhị phân n bít biểu thị được 2n ký tự (chữ, số, các dấu hiệu ....) Các bộ mã phổ biến trong truyền dữ liệu là : mã Baudot, mã ASCII và mã EBCDIC 3.1.1 Mã Baudot. 3.1.2 Mã ASCII. 3.1.3 Mã EBCDIC. 3.1.1 Mã Baudot : Là bộ mã nhị phân dùng 5 bít để biểu diển chữ số và một số dấu hiệu. Bảng 3.1 Bộ mã Baudot Mã Chữ Dấu/Số Mã Chữ Dấu/Số 11000 10011 01110 10010 10000 10110 01011 00101 01100 11010 11110 01001 00111 00110 00011 01101 A B C D E F G H I J K L M N O P - ? : $ 3 ! & # 8 ' ( ) . , 9 0 11101 01010 10100 00001 11100 01111 11001 10111 10101 10001 11111 11011 00100 00010 01000 00000 Q R S T U V W X Y Z LTRS FIGS SPC CR LF NULL 1 4 BELL 5 7 ; 2 / 6 " LTRS FIGS SPC CR LF NULL Với n = 5 chỉ cĩ 25 = 32 mã khác nhau, khơng đủ để biểu diển các ký tự chữ và số nên một số mã phải biểu thị cả hai và chúng được phân biệt bằng cách kèm theo ký tự FIGS hoặc LTRS ở trước. Thí dụ: mã của đoạn văn NO. 27 cĩ dạng như sau : LTRS N O FIGS . SPC 2 7 11111 00110 00011 11011 00111 00100 11001 11100 Khi dùng mã Baudot để truyền bất đồng bộ, số bít stop luơn luơn là 1,5 3.1.2 Mã ASCII : Là bộ mã thơng dụng nhất trong truyền dữ liệu. Mã ASCII dùng số nhị phân 7 bít nên cĩ 27 = 128 mã, tương đối đủ để diễn tả các chữ, số và một số dấu hiệu thơng dụng. Từ điều khiển dùng trong các giao thức truyền thơng thường lấy trong bảng mã ASCII. Khi truyền bất đồng bộ dùng mã ASCII số bít stop là 1 hoặc 2. Bảng 3.2 trình bày mã ASCII cùng các từ điều khiển. * Từ điều khiển trong văn bản: BS (Back space): chỉ cơ chế in hay con trỏ được dời lui một vị trí. Nĩ cĩ thể được dùng để in 2 ký tự ở một vị trí (thường dùng để gạch dưới) hay để in đậm một ký tự (in 1 ký tự 2 lần ở cùng vị trí). Trên màn hình (CRT) chữ sau sẽ thay cho chữ trước. HT (Horizontal Tab): chỉ cơ chế in hay con trỏ được dời tới vị trí tab kế cận hay vị trí dừng. LF (Line Feed): chỉ cơ chế in hay con trỏ được dời xuống đầu dịng kế. VT (Vertical Tab): chỉ cơ chế in hay con trỏ được dời đến dịng kế của chuỗi dịng đã đánh dấu. FF (Form Feed): chỉ cơ chế in hay con trỏ được dời đến điểm bắt đầu của trang (màn ảnh) sau CR (Cariage Return): chỉ cơ chế in hay con trỏ được dời đến điểm bắt đầu trên cùng một dịng Bảng 3.2 Mã ASCII Bit 765→ 000 001 010 011 100 101 110 111 Bit 4321↓ 0 1 2 3 4 5 6 7 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 0 1 2 3 4 5 6 7 8 9 A B C D E F NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US SP ! " # $ % & ` ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^( ) _(←) ' a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ DEL Thí dụ: ký tự D là 1000100 = 44H Ý nghĩa các từ trong bảng mã ASCII * Từ điều khiển trong truyền thơng SOH (Start of Heading): bắt đầu của phần đầu bản tin. Nĩ cĩ thể chứa địa chỉ, chiều dài bản tin hay dữ liệu dùng cho kiểm tra lỗi. STX (Start of Text): bắt đầu văn bản đồng thời kết thúc phần đầu. Thường đi đơi với ETX. ETX (End of Text): kết thúc văn bản EOT (End of Transmission): chấm dứt truyền ENQ (Enquiry): yêu cầu một đài xa tự xác định (identify itself). ACK (Acknowledge) : từ phát bởi máy thu để báo cho máy phát đã nhận bản tin đúng. NAK (Negative Acknowledgment): từ phát bởi máy thu để báo nhận bản tin sai. SYN (Synchronous/Idle): dùng bởi một hệ thống truyền đồng bộ để thực hiện đồng bộ. Khi khơng cĩ dữ liệu để phát, máy phát của hệ thống đồng bộ phát liên tục các từ SYN ETB (End of Transmission Block): chỉ sự chấm dứt một khối của bản tin. * Information separator FS (File Separator), GS (Group Separator), RS (Record Separator), US (United Separator): Dùng cho sự phân cách. Chữ đầu chỉ thành được phân cách (F: File, G: Group, R: Record (bảng ghi), U: Unit (đơn vị)) * Miscellaneous (Linh tinh) NUL (Null): ký tự rổng, dùng lấp đầy khoảng trống khi khơng cĩ dữ liệu BEL (Bell): dùng khi cần báo sự lưu ý. SO (Shift Out): chỉ các tổ hợp mã theo sau được thơng dịch bởi ký tự ngồi tập hợp ký tự chuẩn cho tới khi gặp từ Shift In. SI (Shift In): chỉ tập hợp mã theo sau được thơng dịch bởi ký tự chuẩn. DEL (Delete): dùng bỏ từ SP (Space): khoảng cách từ DLE (Data Link Escape): dùng để chỉ sự thay đổi nghĩa của các từ theo sau. Nĩ cĩ thể cung cấp một sự điều khiển phụ, hay cho phép gửi ký tự dữ liệu cĩ một tổ hợp bít bất kỳ. DC1, DC2, DC3, DC4 (Device Control): từ dùng cho sự điều khiển thiết bị. CAN (Cancel): chỉ dữ liệu đặt trước nĩ khơng cĩ giá trị, do dị được lỗi. EM (End of Medium): chỉ sự kết thúc về mặt vật lý của một card, băng hay mơi trường khác. SUB (Substitute): thay thế một từ bị lỗi hoặc khơng cĩ giá trị ESC (Escape) : từ tăng cường để cung cấp một mã mở rộng. 3.1.3 Mã EBCDIC (Extended BCD Information Code) : Là bộ mã 8 bít được dùng rộng rãi trong hệ thống thơng tin dùng máy tính IBM. Bảng 3.3 trình bày mã EBCDIC và các ký tự điều khiển. Vì mã ký tự chiếm 8 bít nên muốn dùng parity phải dùng bít thứ 9 (các thanh ghi trong các USART thường cĩ 8 bít) do đĩ mã EBCDIC thường được dùng trong những chức năng đặc biệt như trong các ứng dụng đồ họa. Bảng 3.3 Mã EBCDIC High Lơw 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NULL DLE DS SP & 0 1 SOH DC1 SOS a J A J 1 2 STX DC2 FS SYN b k s B K S 2 3 ETX DC3 c l t C L T 3 4 PF RES BYP PN d m u D M U 4 5 HT NL LF RS e n v E N V 5 6 LC BS ETB UC f o w F O W 6 7 DEL IL ESP EOT g p x G P X 7 8 CAN h q y H Q Y 8 9 RLF EM i r z I R Z 9 A SMM CC SM ! ‘ : B VT $ # C FF IFS DC4 * % @ D CR IGS ENQ NAK ( ) , E SO IRS ACK + = F SI IUS BEL SUB ? “ Các mã điều khiển khơng cĩ trong ASCII là : PF Punch Off CC Cursor Control LC Lower Case IFS Interchange File Separator UC Upper Case IGS Interchange Group Separator RLF Reverse Line Feed IUS Interchange Unit Separator SMM Start of Manual Message IRS Interchange Record Separator RES Restore DS Digit Selector NL New Line SOS Start of Significance ID Idle BYP Bypass SM Set Mode RS Reader Top PN Punch On 3.2 CÁC MÃ PHÁT HIỆN LỖI : Nhằm phát hiện lỗi người ta thêm vào dịng dữ liệu các bít kiểm tra. Phương pháp này gọi chung là kiểm tra lỗi dư thừa (Redundancy error check methode), từ dư thừa được dùng vì các bít thím vào khơng phải là phần thơng tin cần gửi đi. 3.2.1 Kiểm tra chẵn lẻ. 3.2.2 Kiểm tra dư thừa theo chu kỳ. 3.2.3 Mã Hamming. 3.2.1 Kiểm tra chẵn lẻ : - Dùng kiểm tra chẵn lẻ để dị ra một bít sai : Ðây là phương pháp kiểm tra đơn giản nhất, bằng cách thêm vào sau chuỗi dữ liệu (thường là một ký tự) một bít sao cho tổng số bít 1 kể cả bit thêm vào là số chẵn (hoặc lẻ), ở máy thu kiểm tra lại tổng số này để biết cĩ lỗi hay khơng. Phương pháp đơn giản nên chất lượng khơng cao, nếu số lỗi là chẵn thì máy thu khơng nhận ra. - Dùng kiểm tra chẵn lẻ để dị sai hai bít : Vì mỗi lần thực hiện kiểm tra chẵn lẻ cho phép dị ra một bít lỗi nên ta cĩ thể nghĩ rằng nếu thực hiện nhiều phép kiểm tra đồng thời cho phép dị được nhiều lỗi. Thí dụ, để dị ra 2 lỗi của một chuỗi dữ liệu cĩ thể thực hiện hai phép kiểm tra, một với các bít chẵn và một với các bít lẻ. Cho chuỗi dữ liệu: 01101000 Lần lượt thực hiện kiểm tra chẵn với các bít ở vị trí 1, 3, 5, 7 và các bít ở vị trí 2, 4, 6, 8. Gọi P1 và P2 là các bít kiểm tra: P1=0+1+1+0 = 0 và P2=1+0+0+0 = 1. Chuỗi dữ liệu phát: 01101000 01. Máy thu dị ra lỗi khi 2 bít liên tiếp bị sai. Tuy nhiên, nếu hai bít sai đều là 2 bít chẵn (hoặc 2 bít lẻ) thì máy thu cũng khơng dị ra. - Dùng kiểm tra chẵn lẻ để dị ra một chuỗi bít sai : Ðơi khi nhiễu làm sai cả một chuỗi dữ liệu (ta gọi là burst errors), để dị ra được chuỗi bít sai này, người ta bắt chước cách lưu và truyền dữ liệu của máy tính (lưu từng bít của một byte trong các chip riêng để truyền trên các đường khác nhau và nơi nhận sẽ tái hợp) để thực hiện việc kiểm tra. Chuỗi dữ liệu sẽ được chia ra thành các khung (frames), thực hiện kiểm tra cho từng khung, thay vì phát mỗi lần một khung, người ta phát các tổ hợp bít cùng vị trí của các khung, nhiễu cĩ thể làm hỏng một trong các tổ hợp này và chuỗi bít sai này cĩ thể được nhận ra ở máy thu. Thí dụ dưới đây minh họa cho việc kiểm tra phát hiện chuỗi dữ liệu sai: Gửi Nhận Số khung (hàng) 1 2 3 4 5 6 7 8 9 10 Số cột 0 1 1 0 1 1 0 0 0 1 0 1 1 1 0 1 1 0 0 1 0 1 0 1 0 1 0 1 1 1 0 1 1 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 0 1 2 3 4 5 Bit parity của từng hàng 1 0 1 1 0 0 0 1 1 0 6 → Nhiễu tác động vào cột 4, làm cho tất cả các bit = 0 → Số khung (hàng) 1 2 3 4 5 6 7 8 9 10 Số cột 0 1 1 0 1 1 0 0 0 1 0 1 1 0 0 1 1 0 0 1 0 1 0 0 0 1 0 1 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 1 1 1 0 0 0 1 2 3 4 5 Bit parity của từng hàng 1 0 1* 1 0* 0* 0 1* 1* 0 6 Máy thu dị ra các khung cĩ lỗi (các bít parity cĩ dấu *) nhưng khơng xác định được cột nào bị sai do đĩ phải yêu cầu máy phát phát lại tất cả các cột - Kiểm tra khối: Một cải tiến của kiểm tra chẵn lẻ là kiểm tra khối (Block Check Character, BCC). Bản tin được viết thành khối và việc kiểm tra chẵn lẻ được thực hiện theo cả 2 chiều dọc (Vertical Redundancy Check, VRC) và ngang (Longitudinal Redundancy Check, LRC) Gọi các bít của mỗi ký tự là bij (i=1,....., n là thứ tự các bít trong ký tự ; j=1,...., m là thứ tự của ký tự) Rj là bít parity của ký tự thứ j, giả sử chọn parity chẵn, ta cĩ : Rj = b1j + b2j + ...........+ bnj Ci là bít parity của tất cả bít thứ i Ci = bi1 + bi2 + ...........+ bim + Tập hợp các bít Rj (j = 1,.......,m) dùng kiểm tra chiều dọc và tập hợp các bít Ci (i = 1,......,n) dùng kiểm tra chiều ngang. (H 3.1) cho ta dạng của khối dữ liệu cĩ thực hiện kiểm tra chẵn theo chiều ngang và dọc. bít 1 2 . . . . . . . bít n Parity Character 1 B11 B21 . . . . . . . Bn1 R1 10110111 ↓VRC Character 2 B12 B22 . . . . . . . Bn2 R2 11010111 00111010 11110000 10001011 Character m B1m B2m . . . . . . . bnm Rm 01011111 Paritycheck char. C1 C2 . . . . . . . Cn Cn+1 01111110 ←LRC (H 3.1) Phương pháp kiểm tra khối cho phép phát hiện và sửa một lỗi vì xác định được vị trí của lỗi đĩ, chính là giao điểm của hàng và cột cĩ bít sai. Máy thu cĩ khả năng phát hiện hai lỗi sai trên cùng một hàng hoặc cột nhưng khơng xác định được vị trí bít lỗi. Ví dụ hai bít 1 và 3 của ký tự thứ nhất cùng sai thì bít kiểm tra VRC khơng phát hiện được nhưng bít LRC thì thấy ngay. Nếu bây giờ cĩ thêm các bít 1 và 3 của ký tự thứ 5 cùng sai thì máy thu sẽ khơng phát hiện được, như vậy cũng cịn trường hợp khơng phát hiện được lỗi nếu số lỗi là một số chẵn theo những vị trí xác định nào đĩ, tuy nhiên trường hợp này rất hiếm xảy ra. Tĩm lại, dùng kiểm tra chẵn lẻ cho phép phát hiện lỗi trong một số trường hợp, tuy nhiên hiệu suất phát sẽ bị giảm và chỉ được dùng trong các hệ thống cĩ vận tốc truyền thấp (bất đồng bộ). Trong các hệ thống truyền đồng bộ người ta hay sử dụng mã CRC , mã này cho phép dị lỗi rất hiệu quả và hiệu suất truyền cũng cao. 3.2.2 Kiểm tra dư thừa theo chu kỳ : Ðể cải thiện hơn nửa việc kiểm tra lỗi người ta dùng phương pháp kiểm tra dư thừa theo chu kỳ (Cyclic Redundancy Check, CRC) Nguyên tắc tạo mã CRC : Xét khung dữ liệu gồm k bít và nếu ta dùng n bít cho khung kiểm tra FCS (Frame check sequence) thì khung thơng tin kể cả dữ liệu kiểm tra gồm (k+n) bít sao cho (k+n) bít này chia đúng cho một số P cĩ (n+1) bít chọn trước (dùng phép chia Modulo-2). Ở máy thu khi nhận được khung dữ liệu, lại mang chia cho số P này và nếu phép chia đúng thì khung dữ liệu khơng chứa lỗi. * Nhắc lại một số tính chất của phép tốn Mod-2 : - Phép cộng Mod-2 là phép cộng nhị phân khơng nhớ, dưới đây là thí dụ về phép cộng và phép nhân 1111 11001 + 1010 x 11 0101 11001 11001 101011 - Phép cộng Mod-2 được thực hiện bởi cổng EX-OR - Phép trừ Mod-2 giống như phép cộng - Nhân Mod-2 một số với 2n tương ứng với dời số đĩ n bít về bên trái và thêm n bít 0 vào bên phải số đĩ, thí dụ 11001* 23 = 11001000 - Phép chia Mod-2 được thực hiện giống như phép chia thường nhưng nhớ là phép trừ trong khi chia được thực hiện như phép cộng. 3.2.2.1. Xác định mã CRC dùng thuật tốn Mod-2. 3.2.2.2. Dùng phép biểu diễn đa thức. 3.2.2.3. Khả năng dị sai của mã CRC. 3.2.2.4. Mạch tạo mã CRC. 3.2.2.1. Xác định mã CRC dùng thuật tốn Mod-2 : Gọi T = (k+n) bít là khung thơng tin được phát , với n < k M = k bít dữ liệu, k bít đầu tiên của T F = n bít của khung FCS, n bít cuối của T P = (n+1) bít, số chia trong phép tốn Số T được tạo ra bằng cách dời số M sang trái n bít rồi cộng với số F : T = 2nM + F Chia số 2nM cho P ta được : 2n Q là số thương và R là số dư Vì phép chia thực hiện với số nhị phân nên số dư luơn luơn ít hơn số chia 1 bít. Ta dùng số dư này làm số F, nghĩa là : T = 2nM + R. Ở máy thu khi nhận được khối dữ liệu, mang chia cho P, kết quả số dư sẽ = 0 : Vì R + R = 0 nên T / P = Q Như vậy dùng số dư R của phép chia 2nM cho P làm ký tự kiểm tra trong khung FCS thì chắc chắn T sẽ chia đúng cho P nếu bản tin khơng cĩ lỗi. Thí dụ: Cho M = 1010001101 (10 bít) P = 110101 (6 bít) Số phải tìm R (5 bít) cho khung FCS được xác định như sau : - Nhân M với 25 cho : 101000110100000 - Thực hiện phép chia cho P 1101010110 110101 110101↓ 0111011 110101↓↓ 00111010 110101↓↓ 00111110 110101↓↓ 00101100 110101↓ 0110010 110101↓ 0001110 ← R Ta cĩ R = 01110, cộng với 25M, sẽ cho số T phát đi là : T = 101000110100000 + 01110 = 101000110101110 Nếu bản tin khơng cĩ lỗi T phải chia đúng cho P. Thực hiện phép chia T/P ta thấy số dư = 0 Tĩm lại, để cĩ một khung FCS n bít , người ta phải dùng một số P cĩ n+1 bít để tạo số R cĩ n bít dùng cho khung FCS. P được gọi là đa thức sinh (generator polynomial), dạng của nĩ do các giao thức qui định, tổng quát P phải cĩ bít đầu và bít cuối là bít 1. 3.2.2.2. Dùng phép biểu diễn đa thức : Ðể thấy quá trình hình thành mã CRC, ta cĩ thể dùng phép biểu diễn một số nhị phân dưới dạng một đa thức của biến x với hệ số là các số nhị phân và bậc của x là giá trị chỉ vị trí của số nhị phân đĩ. Ví dụ số nhị phân 110101 cĩ thể biểu diển bởi 1.x5 + 1.x4 + 0.x3 + 1. x2 + 0.x1 + 1.x0 = x5 + x4 + x2 + 1 Chú ý mã số n bít cho bậc cao nhất của đa thức là n-1 Quá trình hình thành mã CRC thực hiện như sau : - Gọi M là đa thức biểu diễn thơng tin cần truyền P là đa thức sinh, bậc n (chứa n+1 bit) Thực hiện phép chia xn Khung thơng tin truyền đặc trưng bởi T(x) = xn M(x) + R(x) Lưu ý là nhân M(x) với xn tương đương với việc dời M(x) sang trái n bít - Ở máy thu thực hiện phép chia T(x) cho P(x) số dư phải bằng khơng Lấy lại thí dụ trên, bản tin 1010001101 tương ứng với đa thức M(x) = x9 + x7 + x3 + x2 +1 Số chia P = 110101 (6 bít) tương ứng với đa thức P(x) = x5 + x4 + x2 +1 x5M(x) = x14 + x12 + x8 + x7 + x5 Thực hiện phép chia : x9 + x8 + x6 + x4 + x2 +x x5 + x4 + x2 +1 x14 + x12 + x8 + x7 + x5 x14 + x13 + x11 + x9 x13 + x12 + x11 + x9 + x8 + x7 + x5 x13 + x12 + x10 + x8 x11 + x10 + x9 + x7 + x5 x11 + x10 + x8 + x6 x9 + x8 + x7 + x6 + x5 x9 + x8 + x6 +x4 x7 + x5 + x4 x7 + x6 + x4 + x2 x6 + x5 + x2 x6 + x5 + x3 + x x3 + x2 + x = R(x) R(x) = x3 + x2 + x tương ứng với 01110 3.2.2.3. Khả năng dị sai của mã CRC : Một lỗi xảy ra ở một vị trí nào đĩ trong khung dữ liệu làm đảo bít ở vị trí đĩ của khung, điều này tương đương với phép tính EX-OR bít đĩ và bít 1 (vì 0+1=1 và 1+1=0). Nếu gọi E là một khung cĩ số lượng bit bằng với khung dữ liệu, trong đĩ chỉ các vị trí của bít lỗi = 1 và các bít khác = 0 thì khung thơng tin Tr nhận được cĩ thể viết. Tr = T + E. Thí dụ: T = 11010111010 Dạng đa thức: T(x) = x10 + x9 + x7 + x5 + x4 + x3 + x Giả sử bản tin sai ở các bít x7 , x5 và x4 Khung E cĩ dạng: E = 00010110000 E(x) = x7 + x5 + x4 Khung dữ liệu nhận được: Tr = 11000001010 Tr(x) =x10 + x9 + x3 + x Lưu ý phép cộng Modulo 2, tương ứng với phép tốn EX-OR, nên x7+x7=(1+1)x7 = 0 Ta cĩ: Máy thu khơng nhận ra lỗi khi nào Tr(x) chia đúng cho P(x), hay chỉ khi E(x) chia đúng cho P(x). Vậy với điều kiện nào thì E(x) chia hết cho P(x)? Ta sẽ xét một số trường hợp cụ thể: @- Giả sử bản tin chỉ sai một bít, đa thức E(x) cĩ dạng xi, i là một số nguyên, E(x) chia đúng cho P(x) chỉ khi P(x) cũng cĩ dạng xn. Người ta đã chọn P(x) cĩ ít nhất là 2 số hạng nên E(x) khơng thể chia đúng cho P(x). Vậy Mã CRC luơn luơn cho phép máy thu dị ra một bít sai. @- Giả sử bản tin sai một chuỗi, nhưng cĩ tổng số bít sai là số lẻ: đa thức E(x) chứa số lẻ bít 1 nên E(1) =1. Mặt khác, giả sử (x+1) là thừa số của P(x), ta cĩ thể viết P(x) = (x+1)*H(x), H(x) là một đa thức. Ta cũng giả sử lỗi này khơng được dị ra, nghĩa là E(x) chia đúng cho P(x), hay E(x) = P(x)*K(x). Thay P(x) = (x+1)*H(x) vào E(x) được E(x) = (x+1)*H(x)*K(x), biểu thức này cho E(1) = 0. Ðiều này trái với giả thiết ở trên, hay nĩi cách khác, máy thu sẽ dị ra lỗi nếu ta chọn P(x) sao cho chia đúng cho (x+1). Vậy Máy thu sẽ luơn luơn dị ra lỗi gồm nhiều bít và cĩ tổng số bít lỗi là số lẻ nếu ta chọn P(x) chia đúng cho (x+1). @-Giả sử nhiễu làm sai một đoạn dữ liệu cĩ chiều dài m ( bậc n của P(x)) Giả sử chuỗi bít sai cĩ vị trí từ thứ i đến thứ i+m-1, E(x) cĩ dạng: E(x) = xi+m-1 + . . . . +xi = xi*(xm-1+ . . . +1) P(x) khơng là thừa số của xi nên E(x) chỉ chia đúng cho P(x) khi xm-1+ . . . +1 chia đúng cho P(x). Vì m ≤ n hay m-1< n nên phép chia trên khơng thể là phép chia đúng. Vậy Máy thu luơn luơn dị ra lỗi nếu chuỗi dữ liệu sai cĩ chiều dài (bậc của P(x) @-Ðoạn dữ liệu sai cĩ chiều dài m >n Từ kết quả trên Nhưng bây giờ m-1≥ n nên xm-1+ . . . +1 cĩ thể chia đúng cho P(x). Vậy vấn đề là cĩ bao nhiêu cơ hội để điều này xảy ra. - Trường hợp m-1 = n hay (m=n+1). Vì bậc của P(x) là n nên để cĩ phép chia đúng P(x) phải cĩ dạng xn+ . . . . . +1 với các số hạng giữa xn và 1 phải hồn tồn giống với các số hạng của xm-1+ . . . . . +1 thì máy thu khơng dị được lỗi. Cĩ n-1 số hạng giữa xn và 1 nên cĩ 2n-1 tổ hợp và nếu các tổ hợp này cĩ xác suất xảy ra như nhau thì xác suất máy thu khơng nhận được lỗi sẽ là 1/2n-1. - Trường hợp m > n+1, ta chấp nhận kết quả xác suất này là 1/2n. Lấy thí dụ mã CRC-32 (n=32), xác suất khơng dị ra một lỗi cĩ chiều dài >33 bit là 1/2.1032 (tương đương với khả năng dị ra lỗi là 99,99999998%). Tĩm lại với n càng lớn việc máy thu khơng dị ra lỗi càng rất khĩ xảy ra. 3.2.2.4. Mạch tạo mã CRC : Thuật tốn mod 2 được thực hiện bởi cổng EX-OR. Dời bít được thực hiện bởi thanh ghi dịch. Quan sát phép tính chia Mod-2 của số 2nM cho P(x) để cĩ R(x) ta thấy đây là sự kết hợp của sự dời bít của số 2nM với phép cộng Mod-2 của số P(x). Trong thí dụ trên, để tạo mã CRC với P(x) = 110101, người ta dùng mạch (H 3.2): Cho chuỗi dữ liệu là số 2nM (gồm 15 bit, 101000110100000) vào mạch, sau 15 lần dời bít, kết quả trên các thanh ghi dịch chính là R(x). Mạch tạo mã trong trường hợp này gồm 5 thanh ghi dịch, ký hiệu A(x5), B(x4), C(x3), D(x2), E(x) . Mạch tạo mã CRC được thực hiện như sau: - Thanh ghi dịch chứa n bít, bằng với chiều dài của khung FCS. - Cĩ nhiều nhất n cổng EX-OR. - Sự cĩ mặt hay khơng của cổng EX-OR tương ứng với sự cĩ mặt của số hạng lũy thừa bậc n trong đa thức P(x) (Riêng bậc cao nhất (n) của đa thức khơng kể ) (H3.2) A B C D E Bít vào Bắt đầu Bước 1 Bước 2 Bước 3 Bước 4 Bước 5 Bước 6 Bước 7 Bước 8 Bước 9 Bước 10 Bước 11 Bước 12 Bước 13 Bước 14 Bước 15 0 0 0 0 0 1* 1 0 1 0 1 0 1 1 0 0 0 0 0 0 1 0* 1 1 1 1 1 1 0 1 0 1 0 0 0 1 0 1 1 1 1 1 1 0 1 0 1 1 0 0 1 0 1 0* 0 1 0 1 1 1 1 0 1 1 0 1 0 1 0 0 1 0 1 1 1 1 0 1 1 0 1 0 1 0 0 0* Bản tin ảo gửi 1 1 0 1 0 0 0 5 bit 0 thêm vào 0 0 41444444424444443 số dư - Trong thí dụ trên P =110101 = x5 + x4 + x2 + 1, nên mạch chứa ba cổng EX-OR ở các vị trí tương ứng với 1, x2 và x4 (x5 ứng với thanh ghi dịch cuối cùng FFA). Ðường hồi tiếp từ x5 về x4, x2 và 1 (x0) để thực hiện phép cộng Mod-2 với số P(x) như nĩi trên. - Trong 5 bước đầu tiên, các bit cĩ trọng số lớn của M(x). 2n xuất hiện ở ngã ra các FFD một cách bình thường. - Từ bước thứ 6 các kết quả phải kể đến tác dụng của cổng EX-OR, thí dụ ở bước thứ 6 ở ngõ ra E chính là cộng Mod-2 của tín hiệu vào (bit 0) và tín hiệu ngã ra A trước đĩ (bit 1), tức thực hiện EX-OR hai bít 0 và 1 ta được bit 1. Ngã ra D (bit 0) EX-OR với ngã ra A (bit 1) để được bit 1 ở ngã ra C. Ngã ra B(bit 0) EX-OR với ngã ra A (bit 1) để được bit 1 ở ngã ra A. Trên hình vẽ các bit EX-OR với bit ở ngã ra A được đánh dấu. Tương tự như thế, sau15 lần dịch (bước 15), dữ liệu ở ngã ra các FF chính là mã CRC (số dư R = 01110). Ngã ra A là MSB. Cĩ 4 da thức P(x) được dùng để tạo mê CRC thơng dụng: CRC_12 = x12 +x11 + x3 + x2 + x + 1 CRC_16 = x16+x15 + x2 + 1 CRC_CCITT = x16+x12 + x5 + 1 CRC_32 = x32+ x26+ x23+ x22 + x16+ x12 + x11+ x10+ x8+ x7 + x5 + x4 + x2+ x +1 CRC_12 dùng truyền với ký tự 6 bit và khung FCS dài 12 bit. CRC_16 & CRC_CCITT dùng truyền ký tự 8 bit và khung FCS dài 16 bit. (ở Mỹ và Âu châu). CRC_32 Dùng trong mạng cục bộ (LAN) và một số ứng dụng của DOD (Department Of Defense). 3.2.3 Mã Hamming : Mã Hamming là một bước phát triển của kiểm tra chẵn lẻ và cĩ khả năng sửa sai do xác định được vị trí lỗi. Số lượng bít của mã Hamming tùy thuộc số lượng bít của chuỗi dữ liệu. Ta cĩ thể lý luận như sau để xác định số lượng bít của mã Hamming. Gọi m là số bít của chuỗi dữ liệu và n là số bít của mã Hamming, tổng số bít phát đi là m+n - Với n = 1 ta xác định được 1 trong 2 kết quả : chuỗi dữ liệu sai hoặc đúng nhưng khơng biết vị trí lỗi. - Với n = 2, 1 trong 4 trường hợp xảy ra: 2 phép kiểm tra đều cho kết quả đúng, 2 phép kiểm tra đều cho kết quả sai, phép kiểm tra thứ nhất sai, phép kiểm tra thứ hai đúng và ngược lại. 4 trường hợp này cho phép kết luận được 1 bít sai ở 1 trong 3 vị trí. - Với n=3, cĩ 8 khả năng xảy ra và ta cĩ thể kết luận được 1 bít sai ở 1 trong 7 vị trí. - Với số n bất kỳ, cĩ 2n khả năng xảy ra và ta cĩ thể kết luận được 1 bít sai ở 1 trong 2n -1 vị trí. Vậy để cĩ thể phát hiện 1 lỗi tại 1 vị trí cụ thể thì số n nhỏ nhất được chọn phải thỏa: 2n - 1 ≥ m + n hay 2n ≥ m + n + 1 Các bít của mã Hamming chèn vào vị trí 2n và dùng cho kiểm tra chẵn lẻ. Các bít khác là bít thơng tin (dữ liệu). Dưới đây là một ví dụ để thấy cách xác định mã Hamming: Giả sử chuỗi dữ liệu cần truyền gồm 4 bít như sau : 1 0 1 0 Với m = 4 , ta chọn n = 3, bất đẳng thức trên được thỏa Gọi các bít của mã Hamming là H1 H2 và H4 (1, 2, 4 là các vị trí mà ta sẽ đặt 3 bít của mã Hamming vào dịng dữ liệu). Gọi các bít dịng dữ liệu là X3, X5, X6, X7. Tổ hợp các bít dữ liệu và bít mã, ta đươc 1 2 3 4 5 6 7 H1 H2 X3 H4 X5 X6 X7 Giả sử ta chọn Parity chẵn, các bít mã sẽ được xác định như sau: H1⊕ X3 ⊕ X5 ⊕ X7 = 0 H1 =X3 ⊕ X5 ⊕ X7 =1 ⊕ ( 0 ⊕ 0 ) = 1 ⊕ 0 = 1 Tương tự: H2 = X3 ⊕ X6 ⊕ X7 = 1 ⊕ ( 1 ⊕ 0 ) = 1 ⊕ 1 = 0 H4 = X5 ⊕ X6 ⊕ X7 =0 ⊕ ( 1 ⊕ 0 ) = 0 ⊕ 1 Bản tin bao gồm bít mã trở thành: 1 0 1 1 0 1 0 Ở máy thu để kiểm tra người ta thực hiện các phép tốn: C1 = H1⊕ X3 ⊕ X5 ⊕ X7 C2 = H2⊕ X3 ⊕ X6 ⊕ X7 C4 = H4⊕ X5 ⊕ X6 ⊕ X7 Nếu C1=C2=C4=0, khơng cĩ lỗi xảy ra Nếu C1 = 1, C2 = C4 = 0, một trong các bít 1, 3, 5, 7 bị lỗi. Nhưng C2 = C4 = 0 cĩ nghĩa là các bít 2, 3, 6, 7 và 4, 5, 6, 7 đã đúng. Vậy bít sai phải là bít 1 Lý luận tương tự ta cĩ các trường hợp khác. Thí dụ nếu C1= C2 = C4 = 1 thì bít lỗi là bít 7 Thí dụ bản tin nhận được là 1 0 1 1 1 1 0 Mạch dị sai sẽ tính C1 , C2 , C4 như sau: C1 = H1⊕ X3 ⊕ X5 ⊕ X7 = 1 ⊕ 1 ⊕ 1 ⊕ 0=1 C2 = H2 ⊕ X3 ⊕ X6 ⊕ X7 = 0 ⊕ 1 ⊕ 1 ⊕ 0=0 C4 = H4⊕ X5 ⊕ X6 ⊕ X7 = 1 ⊕ 1 ⊕ 1 ⊕ 0=1 Vì chỉ bít X5 thuộc cả C1 và C4 nên bít sai là bít thứ 5 Quan sát tổ hợp C4 C2 C1 ta thấy C4 C2 C1 = 101 = (5)10 . Như vậy giá trị cĩ được của tổ hợp này cho ta biết vị trí bít sai cần sửa chữa. Nếu tổ hợp này bằng 0 chứng tỏ bản tin nhận đúng. Mã Hamming cĩ thể được phát triển để dị ra hai bít sai và sửa được một bit lỗi. 3.3 MÃ NÉN DỮ LIỆU : Một vấn đề cũng luơn được quan tâm trong truyền dữ liệu là làm thế nào để giảm thiểu số bít cần thiết để truyền một bản tin. - Như ta đã biết, phương pháp điều chế vi phân, ngồi tác dụng tốt về mặt đồng bộ cịn cĩ tác dụng giảm số bít đi rất nhiều nếu thơng tin cĩ tính lặp lại. - Một phương pháp khác là mã hĩa Run Length. Phương pháp này cho phép người ta phát đi các mã thay cho các chuỗi ký tự cĩ tính lặp lại kèm theo mã điều khiển báo cho bên thu số lần lặp lại, nhờ mã này mà bên thu cĩ thể tạo lại tồn bộ chuỗi thơng tin đã truyền. - Mã đồ họa trong hệ thống Videotex dùng một bảng mã hình học để phát đi các đồ họa của máy tính hoặc hình ảnh video. Mỗi hình được phát đi là tập hợp các hình cơ bản với vị trí, màu sắc và kích thước xác định. Các hình cơ bản là các vịng trịn, hình chữ nhật....Ðiều này làm giảm rất nhiều số bít cần thiết so với việc phải phát đi từng tọa độ và màu của từng điểm trên màn hình. 3.3.1 Mã Huffman. 3.3.2 Mã Run length. 3.3.3 Mã vi phân. 3.3.1 Mã Huffman : Mã Huffman lợi dụng xác suất xảy ra của các ký tự khác nhau mà gán các từ mã ngắn cho các ký tự cĩ xác suất xảy ra lớn và ngược lại. Thí dụ, thay vì dùng 7 bít để mã tất cả các ký tự như mã ASCII, người ta chỉ gán 2 bít cho chữ E và 10 bít cho chữ Z, bởi lẻ, trong tiếng Anh xác suất xuất hiện chữ E rất lớn so với xác suất xuất hiện chữ Z. Mã này cịn cĩ tên Mã phụ thuộc tần số (frequency dependent code) Với phương pháp này số bít trung bình dùng cho mỗi ký tự sẽ giảm. Nhưng do các mã dài ngắn khác nhau, để máy thu phân biệt được, người ta phải chọn các từ mã ngắn sao cho khơng trùng với các bít đầu của các từ mã dài hơn. Gọi là tính tiền tố (prefix property). Giải thuật Huffman: Dưới đây là các bước tạo mã Huffman - Tương ứng với mỗi dữ kiện liên kết một cây nhị phân chứa duy nhất một nút. Ở mỗi cây ghi tần số xuất hiện mà ta gọi là trọng lượng của cây. - Tìm hai cây nhẹ nhất. Nếu cĩ nhiều hơn hai, ta chọn ngẫu nhiên hai cây trong số các cây cĩ trọng lượng nhẹ nhất, ghép chúng lại thành một cây đơn với nút gốc mới. Tổng trọng lượng hai cây này là trọng lượng của cây mới. - Lặp lại các bước cho tới lúc chỉ cịn một cây duy nhất. Các cây ban đầu trở thành các lá của cây nhị phân cuối cùng này. Ta biết rằng đối với cây nhị phân thì chỉ cĩ một đường duy nhất từ gốc cho tới lá. Với mỗi lá, đường từ gốc đến nĩ chính là mã Huffman tương ứng. Mã này xác định bằng cách ghi trị 0 cho nhánh bên trái và 1 cho nhánh bên phải (hoặc ngược lại). Thí dụ 1: Thiết lập mã Huffman cho các ký tự A, B, C, D, E với tần số xuất hiện lần lượt là 0,25; 0,15; 0,10; 0,20; 0,30. (H 3.3a) là cây với 5 nút đơn ban đầu và trọng lượng tương ứng. (H 3.3b) ghép 2 cây B và C thành một cây mới với trọng lượng là tổng trọng lượng cây B và C (0,25) Bước tiếp theo ta cĩ thể ghép cây mới hình thành với cây D hay cây A với D. (H 3.3c) ghép cây mới với D để được một cây trọng lượng là 0,45. (H 3.3d) ghép cây E và A Cuối cùng, ghép hai cây mới tạo để được một cây duy nhất, Ghi trị 0 và 1 vào các nhánh (H 3.3e). (H3.3) Ta được bảng mã sau: Ký tự Mã A B C D E 01 110 111 10 00 Chiều dài trung bình của từ mã cĩ thể tính như sau: 0,25*2 + 0,15*3 + 0,10*3 + 0,20*2 + 0,30*2 = 2,25 bít/ký tự Do cĩ sự chọn ngẫu nhiên khi các dữ kiện cĩ cùng trọng lượng nên kết quả cĩ thể cho các bảng mã khác nhau. Tuy nhiên, kết quả cuối cùng của các bộ mã khác nhau phải cho cùng chiều dài trung bình của từ mã. Thí dụ 2: Mã hố giá trị nhiệt độ trong khoảng từ 20°C đến 30°C với xác suất cho trong (H 3.4). Thay vì thực hiện các cây nhị phân như trên, ta cĩ thể dựa vào xác suất của các giá trị nhiệt độ mà lập một đồ họa để thực hiện việc mã hĩa sao cho các giá trị cĩ xác suất lớn sẽ dùng từ mã ngắn nhất cĩ thể cĩ. Các sự kiện (là các giá trị nhiệt độ) được liệt kê theo xác suất giảm dần (H 3.4a) Ta bắt đầu bằng cách gán hai bít 0 và 1 cho 2 sự kiện cĩ khả năng xảy ra ít nhất, sau đĩ hai sự kiện này được tổ hợp thành một sự kiện cĩ xác suất bằng tổng hai xác suất của hai sự kiện đĩ, các sự kiện được sắp xếp theo thứ tự giảm dần và thủ tục lặp lại từ dưới lên và từ trái sang phải cho đến khi hai sự kiện cuối cùng được kết hợp. Từ mã của các sự kiện được viết bằng cách dị theo các đường của sơ đồ theo chiều ngược lại, từ phải qua trái. Cuối cùng ta cĩ bảng mã (H 3.4b) Từ mã trung bình: 0,21*2 + 0,17*3 + 0,15*3 + 0,12*3 + 0,1*3 + 0,06*4 + 0,05*4 + 0,04*5 + 0,03*6 + 0,02*6 =3,18 bít/sự kiện Số bít dùng mã hĩa đã giảm khoảng 20%. Một ưu thế của phương pháp Huffman là cĩ thể lập trình để thực hiện việc mã hĩa. Trở lại Thí dụ 1, bây giờ giả sử chuỗi ký tự được phát đi là A B E C A D B C, tương ứng với chuỗi bít 01110001110110110111, máy thu khi nhận được chuỗi dữ liệu sẽ thực hiện việc giải mã như thế nào ? Nhờ vào tính tiền tố của các mã, máy thu sẽ lần lượt đọc các bít cho tới khi gặp một chuỗi con các bít tương ứng với một mã sẽ dừng lại, giải mã ký tự này, sau đĩ tiếp tục đọc chuỗi dữ liệu kế tiếp để tìm ra ký tự thứ hai. . . (a) (H3.4) (b) 3.3.2 Mã Run length : Mã Huffman tuy cĩ làm giảm số bít truyền đi nhưng nĩ địi hỏi dữ liệu phải được tập hợp thành từng nhĩm hay ký tự để xác định tần số lặp lại của các nhĩm hay ký tự này. Việc này đơi khi rất khĩ thực hiện đối với một số loại dữ liệu thí dụ như dữ liệu từ một bản fax, tín hiệu mã hình ảnh . . . Lấy thí dụ trường hợp bản fax, dữ liệu được phát đi khơng phải là các ký tự mà là các bít tương ứng với điểm sáng tối trên tờ giấy, như vậy phải cĩ một kỹ thuật phù hợp để nén chuỗi dữ liệu này, đĩ chính là mã Run length. Mã Run length được tạo ra bằng cách quan sát chuỗi bit 0 (hoặc 1) liên tiếp và thay thế chiều dài chuỗi bít này bởi một số nhị phân. Ở máy thu khi nhận được các số nhị phân sẽ thay các số này bởi các bít 0 (hoặc 1) đồng thời chèn các bít khác loại vào. Thí dụ ta phải tạo mã Run length cho chuỗi dữ liệu sau bằng cách dùng số 4 bít thay cho số bit 0 liên tiếp: Dịng dữ liệu 0 . . . 0 1 0 . . . 0 1 1 0 . . . 0 1 0 . . . 0 1 1 0 . . . 0 91 bít Số bít 0 liên tiếp 14 9 20 30 11 Run length (nhị phân) 1110 1001 0000 1111 0101 1111 1111 0000 0000 1011 40 bít Run length (thập phân) 14 9 0 15 5 15 15 0 0 11 Nhận xét cách tạo mã : - 1 bít 1 giữa các chuỗi bít 0 sẽ khơng được mã, máy thu tự động chèn bít 1 này vào khi phục hồi dữ liệu. - Nếu cĩ 2 bít 1 liên tiếp, ta xem như cĩ 1 chuỗi gồm khơng bít 0 giữa 2 bít 1 này và phải được thay thế bởi số 0000. - Nếu số số 0 nhiều hơn 15 ta phải dùng 2 số nhị phân thay cho chuỗi này (20=15+5; 30=15+15). Ở máy thu khi gặp chuỗi bốn bít 1 nĩ phải hiểu là phải lấy tổng số này với các số phía sau, nếu số sau cùng cũng gồm 4 bít 1, máy thu phải được báo bằng chuỗi 4 bít 0 theo sau (trường hợp sau số 30) - Nếu chuỗi dữ liệu bắt đầu bằng bit 1 thì máy phát sẽ gửi đi 4 bít 0 đầu tiên. Kỹ thuật nén này chỉ cĩ hiệu quả khi chuỗi dữ liệu chứa rất nhiều một loại bit. Ngồi ra, kỹ thuật nén Run length cũng được dùng mã hĩa các chuỗi ký tự giống nhau bằng cách thay mỗi chuỗi ký tự liên tiếp bằng con số chỉ độ dài đứng trước ký tự đĩ. Thí dụ, với chuỗi HHHHHFFFFFFFFYYYYYYYYYYYYYGGGGGGGGGG Sẽ cĩ mã là: 5H8F13Y10G 3.3.3 Mã vi phân (Differential encoding) : Cịn gọi là mã tương đối (Relative encoding) Trong nhiều trường hợp, các dữ liệu liên tiếp nhau thay đổi rất ít . Thí dụ trường hợp mã tín hiệu hình ảnh trong kỹ thuật video, do phải xử lý 30 bán ảnh (khung) trong một giây để tạo ảnh động, nên chi tiết của các ảnh khơng khác nhau bao nhiêu, thay vì phải nén tín hiệu từng khung người ta nghĩ tới việc xác định sự khác nhau của các khung liên tiếp, mã thơng tin này và gửi đi. Nguyên tắc của mã vi phân như sau: khung thứ nhất được phát đi đồng thời lưu ở bộ đệm của máy phát và thu. Máy phát sẽ so sánh khung thứ hai với khung thứ nhất này, mã sự khác biệt và phát đi dưới dạng một khung. Máy thu khi nhận khung thứ hai, nhờ các mã chỉ sự khác biệt mà so sánh với khung thứ nhất (đã lưu trước đĩ) để tái tạo khung thứ hai, đồng thời nĩ lưu khung thứ hai này trong bộ đệm và quá trình tiếp tục với các khung mới. (H 3.5) là một thí dụ minh họa. 5 7 6 2 8 6 6 3 5 6 6 5 7 5 5 6 3 2 4 7 8 4 6 8 5 6 4 8 8 5 5 1 2 9 8 6 5 5 6 6 5 5 2 9 9 6 8 9 5 1 Khung thứ nhất 5 7 6 2 8 6 6 3 5 6 6 5 7 6 5 6 3 2 3 7 8 4 6 8 5 6 4 8 8 5 5 1 3 9 8 6 5 5 7 6 5 5 2 9 9 6 8 9 5 1 Khung thứ nhì 5 7 6 2 8 6 6 3 5 6 6 5 8 5 5 6 3 3 3 7 8 4 6 8 5 6 4 8 8 5 5 1 3 9 7 6 5 5 8 6 5 5 2 9 9 6 8 9 5 1 Khung thứ ba 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 Khung phát đi là sai biệt giữa khung thứ nhì và khung thứ nhất 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 Khung phát đi là sai biệt giữa khung thứ ba và khung thứ nhì (H 3.5) Dữ liệu gồm các số nguyên được biểu diễn trong một khung 2 chiều, chúng khơng mang một ý nghĩa cụ thể nào, mục đích của thí dụ là để hiểu cách tạo mã. Khung thứ nhất chứa một tập hợp các số nguyên và khung thứ hai chứa một tập hợp các số nguyên khác khung thứ nhất một ít. Trong hình, các khung nằm dưới khung thứ hai và thứ ba là khung chứa các mã vi phân, số 0 chỉ khơng cĩ sự khác biệt dữ liệu của 2 khung, số1chỉ dữ liệu khung sau lớn hơn khung trước 1 đơn vị và số -1 chỉ ngược lại. Dĩ nhiên cĩ thể sử dụng các số khác hơn là 1 và -1. Thí dụ cho ta thấy sự xuất hiện một chuỗi dài các bít 0 và cĩ thể được nén nhờ phương pháp Run length. 3.4 MẬT MÃ : Trong nhiều trường hợp, bản tin cần được giữ bí mật đối với đệ tam nhân thì việc mã hĩa được thực hiện dưới dạng mật: bản tin được mã bởi một khĩa mà chỉ hai người liên hệ trong trao đổi thơng tin biết để sử dụng khi mã hĩa và giải mã. Gọi bản tin ban đầu là P (Plaintext), bản tin đã cài mật mã là C (Ciphertext) thì C = Ek(P), E và k là giải thuật và khĩa tạo mã ( Algorithm & Encryption key). Nơi nhận, nhận bản tin C và phục hồi lại P với giải thuật và khĩa là D và k’ : P =Dk’(C) = Dk’ Ek(P). Trong đa số trường hợp (nhưng khơng phải luơn luơn) k=k’. Giải thuật và khĩa càng phức tạp thì độ an tồn của bản tin càng cao. Chúng ta sẽ xét một số cách tạo mật mã từ đơn giản đến phức tạp. 3.4.1.Mã Caesar 3.4.2. Mã đa mẫu tự. 3.4.3. Mã chuyển vị. 3.4.4. Mã DES. 3.4.1. Mã Caesar (Caesar cipher) : Cịn gọi là mã mẫu tự đơn (mono-alphabetic cipher) Ðây là loại mật mã cĩ sớm nhất và đơn giản nhất. Người ta sẽ thay các ký tự của bản tin bằng các ký tự khác theo một qui luật nào đĩ, thí dụ bằng cách cộng một số nguyên vào mã ASCII của các ký tự ta sẽ cĩ một bản tin mật. Thí dụ cộng 1 vào mã ASCII ta sẽ cĩ ký tự B thay cho A, C thay cho B . . . . Và nơi nhận sẽ giải mã bằng cách trừ 1 cho các mã nhận được trước khi tra bảng mã ASCII. Vì giải thuật tạo mã quá đơn giản nên bản tin cĩ thể được giải mã một cách dễ dàng mà khơng cần biết trước khĩa. Thí dụ, trong tiếng Anh, các ký tự E, T, O và N là các ký tự thường xuất hiện nhiều lần trong các văn bản nên khi gặp bản mã người ta cĩ thể thay các ký tự lặp lại nhiều lần bằng các ký tự này. Sau vài thử nghiệm cĩ thể thấy được qui luật và suy ra bản tin. Ðể minh họa, giả sử một người nhận được bản tin sau: {;RSDR\SFF\,PMRU \YP\,U \NSML \ SVVPIMY \ $234567890 Trước nhất người ta liệt kê các ký tự thường xảy ra : \ (7 lần), S (4 lần), R, P và M (3 lần), như vậy người ta cĩ thể thay thử các ký tự S, R, P, M bởi E, T, O, A và N (in đậm): {;EADE \AFF \,ONEU \YO \,U \NANL \AVVOINY \$234567890 Tiếp tục, người ta cĩ thể nghĩ là trong một văn bản luơn cĩ các khoảng trống, như vậy thử thay các dấu \ bằng các khoảng trống, bản tin thành {;EADE AFF ,ONEU YO ,U NANL AVVOINY $234567890 Nhận xét tiếp các từ chứa ít ký tự như AFF và YO, trong tiếng Anh, từ 3 ký tự mà hai ký tự sau giống nhau khiến ta nghĩ đến từ ADD và từ 2 ký tự kết thúc bằng O khiến ta nghĩ tới từ TO. Thay vào ta lại được bản tin: {;EADE ADD ,ONEU TO ,U NANL AVVOINY $234567890 Cho tới đây, dường như ta đã đi được một đoạn đường khá dài để sắp tới đích, thêm vài lần thử người ta cĩ thể tìm ra bản tin. PLEASE ADD MONEY TO MY BANK ACCOUNT #123456789 Một phương pháp khác để tạo mã mẫu tự đơn cĩ tên là Polybius square. Mẫu tự I và J được kết hợp lại và được xử lý như một từ đơn, để tổng số mẫu tự là 25. 25 mẫu tự lại được chia thành dãy 5x5. Mỗi mẫu tự sẽ được mã bởi một cặp số tương ứng với hàng và cột trong bảng mã 1 2 3 4 5 1 2 3 4 5 A F L Q V B G M R W C H N S X D IJ O T Y E K P U Z Thí dụ bản văn N O W I S T H E T I M E 33 43 25 42 34 44 32 51 44 42 23 51 3.4.2. Mã đa mẫu tự (Poly-alphabetic cipher) : Ðể tránh việc lặp lại các ký tự trong bản mật mã, người ta dùng loại mã đa mẫu tự, tương tự mã Caesar, mỗi ký tự cũng được thay bởi một ký tự khác, nhưng các ký tự giống nhau khơng phải được thay bằng một ký tự duy nhất, mà sẽ được thay bằng các ký tự khác nhau tùy theo vị trí của nĩ. Một thí dụ của mã đa mẫu tự là mã Vigenère Dùng một mãng 2 chiều của các ký tự, trong đĩ mỗi hàng chứa các mẫu tự theo Alphabet nhưng thứ tự trong từng hàng khác nhau: Thí dụ: Cột 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 1718 19 20 21 22 23 24 25 Hàng 0 A B CD E FGH I J K L M N O P Q R S T U V W X Y Z Hàng 1 B C DE FGH I J K L M N O P Q R S T U V W X Y Z A Hàng 2 C DE F GH I J K L M N O P Q R S T U V W X Y Z A B Hàng 3 D E FG H I J K L M N O P Q R S T U V W X Y Z A B C . . . . . . . . . . . . . . Hàng 24 Y Z AB C D E FGH I J K L M N O P Q R S T U V W X Hàng 25 Z AB C D E FGH I J K L M N O P Q R S T U V W X Y Cột 0 12 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 1920 21 22 23 24 25 Ðể thay thế một ký tự, gọi i là vị trí tương đối của nĩ trong bản tin (bắt đầu là vị trí 0) và j là vị trí tương đối của nĩ trong thứ tự Alphabet. Gọi V là mảng, ký tự sẽ được thay bằng một ký tự trong V[ i mod 26,j ]. Thí dụ dùng mảng ở trên để thay các chữ THE trong bản tin ở các vị trí 25, 54 và 104. Ta lập bảng thay thế như sau: Ký tự cần thay Vị trí i i mod 26 Vị trí j Ký tự phải thay T H E T H E T H E 25 26 27 54 55 56 104 105 106 25 0 1 2 3 4 0 1 2 19 7 4 19 7 4 19 7 4 S (h25, kt19) H (h0, kt7) F V K I T I G Như vậy các ký tự THE ở các vị trí khác nhau trong bản tin đã lần lượt được thay bởi SHF, VKI và TIG. Mặc dù đã giải quyết được sự lặp lại, nhưng xét kỹ chúng ta vẫn thấy rằng cĩ một qui luật mà người ta vẫn cĩ thể nhận ra đĩ là khoảng cách của các ký tự của cùng một mã là như nhau do tính tuần hồn của mãng mẫu tự mà chúng ta sử dụng và do bài tốn mod 26 (khoảng cách trong mã ASCII của S & H, V & K và T & I đều là 11). Ðể khắc phục điều này người ta cĩ thể tăng số hàng của mãng ký tự lên, nhưng như vậy đưa đến kết quả là khĩa cĩ thể quá dài (thậm chí dài hơn bản tin), khĩ khăn cho việc phát và lưu trữ một cách an tồn. 3.4.3. Mã chuyển vị (Transposition cipher): Người ta sẽ sắp xếp lại thứ tự các ký tự của bản văn bằng cách lưu chúng trong một mãng 2 chiều m cột, m ký tự đầu tiên sẽ cho vào hàng thứ nhất, m ký tự kế tiếp cho vào hàng thứ hai, và cứ thế tiếp tục cho hết bản tin, sau đĩ hốn đổi vị trí các cột theo thứ tự mới, giả sử p1, p2 . . . pm. Sự hốn đổi cĩ thể thực hiện một cách ngẫu nhiên hoặc theo một qui luật định trước. Bản tin sẽ được truyền đi theo thứ tự từ p1, p2 . . . đến pm Thí dụ bản tin cần phát: MISS PIGGY KERMIT ANIMAL AND FOZZIE BEAR Giả sử dùng mãng 5 cột 1 2 3 4 5, Bản tin được đưa vào mãng như sau: Số cột 1 2 3 4 5 M P I I A O I I K T M N Z B S G E A D Z E S G R A L I A Y M N F E R Sắp xếp lại các cột theo thứ tự 2, 4, 3, 1, 5, ta được bản tin: IIKTMNZBSGRAL IASGE ADZEMP IIAO (2 khoảng trống) YMN FER Rõ ràng là bản tin đã mã hĩa khơng cịn một dáng dấp nào của bản tin ban đầu. Nhưng phương pháp vẫn cịn khuyết điểm là sự lặp lại của các ký tự. Nếu kẻ gian xác định được mật mã đã dùng là loại chuyển vị thì khả năng giải được mã khơng khĩ lắm (nhất là cĩ phương tiện tin học trong tay). 3.4.4. Mã DES (Data Encryption Standard) : Mã DES được phát triển bởi IBM vào những năm đầu thập niên 70, đã được chính phủ cho phép xem như chuẩn trong việc tạo mật mã dùng trong thương mại và những tin tức khơng coi là bí mật và người ta đã chế tạo các chip VLSI để thực hiện viêc tạo mã nhanh hơn. DES chia bản tin ra thành từng khối 64 bit và dùng khĩa 56 bit để thực hiện quá trình tạo mã rất phức tạp bao gồm các kỹ thuật như chuyển vị, thay thế, tốn tử EX-OR và vài xử lý khác để tạo nên một bản mã 64 bit. Tiến trình thực hiên gồm: - Bước 1: Chuyển vị 64 bit dữ liệu và 56 bit khĩa - Bước 2 gồm 16 lần thực hiện sự mã hĩa tương tự nhau nhưng với các khĩa khác nhau, dữ liệu ra của lần thực hiện trước sẽ là dữ liệu vào của lần thực hiện sau. - Bước 3: Trộn 32 bit đầu và 32 bit cuối - Bước 4: Thực hiện lần chuyển vị cuối cùng. (H 3. 6) mơ tả các bước tạo mã của DES (H3.6) (H 3.7) minh họa một trong 16 lần thực hiện mã hĩa Trong (H 3.7) , các ký hiệu C64 chỉ 64 bít đã được mã hĩa, L32 chỉ 32 bit đầu của C64, R32 là 32 bít cuối, K56 là khĩa 56 bít. Ngồi ra các ký hiệu như X48 chỉ chuỗi dữ liệu 48 bít cĩ được từ một tác vụ trung gian trước đĩ. Lưu ý là để đơn giản, chúng ta chỉ dùng cùng 1 ký hiệu cho các chuỗi dữ liệu ra của cùng 1 tác vụ, nhưng các chuỗi này là khác nhau (Thí dụ, cùng dùng ký hiệu X6 cho các chuỗi dữ liệu ra từ mạch chia nhĩm, nhưng các chuỗi ra từ các mạch khác nhau thì khác nhau). Như (H 3.7) mơ tả, đầu tiên, người ta chia 64 bít ra làm đơi, 32 bít đầu ký hiệu L32 và 32 bít cịn lại là R32. Tiếp theo chuỗi R32 được mở rộng thành 48 bít (R48) bằng cách chuyển vị và nhân đơi một số bit (Ta ký hiệu R48 để nhấn mạnh rằng chuỗi này được dẫn xuất từ R32). Ðồng thời khĩa 56 bit cũng được phân làm đơi và thực hiện việc quay vịng cho mỗi nhĩm (số lần quay tùy theo giải thuật ở từng bước mã hĩa khác nhau), sau đĩ thực hiện chuyển vị, chuỗi bít ra ký hiệu là K56. Bước tiếp theo là thực hiện hàm EX-OR cho R48 và K56, kết quả là chuỗi X48, chuỗi này lại được phân thành 8 nhĩm 6 bít (X6) rồi thực hiện việc thay thế để giảm xuống thành các nhĩm 4 bít (X4) sau đĩ tổ hợp 8 nhĩm này để thành chuỗi X32. X32 lại được EX-OR với L32, kết quả là X32. Cuối cùng chuỗi X32 tổ hợp với chuỗi bít R32 để cho mã 64 bít (C64). (H3.7) Tĩm lại, giải thuật để cĩ được một bản tin mật rất là phức tạp, nhưng như thế vẫn chưa chắc đã bảo mật tuyệt đối được bản tin. Ngồi ra, việc qui ước với nhau cách tạo các khĩa hoặc cách thơng tin cho nhau về các khĩa cũng phải được thực hiện sao cho bí mật phải được bảo đảm. Vấn đề bảo mật cịn rất nhiều điều phải nghiên cứu. CHƯƠNG 4 TRUYỀN NỐI TIẾP BẤT ðỒNG BỘ . Nội dung: 4.1 HỆ THỐNG TRUYỀN DỮ LIỆU . 4.2 MẪU TÍN HIỆU TRONG TRUYỀN BẤT ðỒNG BỘ . 4.3 VÀI IC THỰC HIỆN GIAO THỨC BẤT ðỒNG BỘ . ------------------------------------------------------------------------------------------------------------ Như đã biết, trong các hệ thống truyền dữ liệu cĩ hai cách đưa tín hiệu lên đường truyền: nối tiếp và song song. Cách truyền song song thường được truyền trên một khoảng cách ngắn, ví dụ giữa các thiết bị trong cùng một phịng như từ máy tính sang máy in. Cách truyền nối tiếp thường được thực hiện khi khoảng cách truyền khá xa. Ngồi ra, trong cách truyền nối tiếp, dựa vào cách thực hiện sự đồng bộ giữa nơi phát và thu ta cĩ hai chế độ hoạt động: đồng bộ và bất đồng bộ. Trong chế độ bất đồng bộ, xung đồng hồ được tạo ra một cách riêng rẻ ở máy phát và máy thu dựa vào tần số danh định tương ứng với vận tốc truyền (bit rate hoặc baud rate). Trong chế độ đồng bộ, nơi phát cĩ thể gửi xung đồng hồ tới nơi thu theo một kênh truyền song song với kênh truyền dữ liệu hoặc nơi thu tự tạo ra xung đồng hồ bằng cách tách tín hiệu thời gian từ dịng dữ liệu. Chương này bàn đến chế độ truyền nối tiếp bất đồng bộ. Chúng ta sẽ lần lượt giới thiệu tính chất chung của hệ thống truyền dữ liệu, các giao thức của hệ thống truyền bất đồng bộ. Chúng ta cũng sẽ khảo sát vài IC thực hiện chức năng biến đổi song song, nối tiếp trong các thiết bị thu phát . 4.1 HỆ THỐNG TRUYỀN DỮ LIỆU: 4.1.1 Vận hành . 4.1.2 Dung lượng của kênh truyền . 4.1.1 Vận hành : Một mẫu hệ thống truyền dữ liệu gồm 3 bộ phận chính (H 4.1) - Một cặp thiết bị xử lý tín hiệu (Terminal, vd máy tính), một của máy phát (chuyển thơng tin thành tín hiệu số) và một của máy thu (chuyển dữ liệu số thành thơng tin). - Một cặp giao diện nối tiếp, được gọi là thiết bị đầu cuối (Data Terminal Equipment, DTE) mà nhiệm vụ chính là biến đổi chuỗi dữ liệu song song thành nối tiếp ở máy phát và ngược lại ở máy thu, đồng thời thực hiện một số chức năng khác theo yêu cầu của người sử dụng. - Một cặp giao diện truyền dữ liệu, được gọi là thiết bị truyền dữ liệu (Data Communication Equipment, DCE), thực hiện sự giao tiếp giữa DTE và mơi trường truyền. → Máy tính hay Terminal phát Bản tin → Giao diện nối tiếp DTE → Giao diện truyền dữ liệu DCE  | Báo nhận | | Kênh truyền | | | | |  Máy tính hay Terminal thu Bản tin ← Giao diện nối tiếp DTE ← Giao diện truyền dữ liệu DCE | | ← (H 4.1) Vận hành của hệ thống như sau : Máy tính gửi bản tin dưới dạng một chuỗi ký tự song song tới DTE. Ở đây bản tin được chuyển sang dạng nối tiếp để phát đi từng bít ở từng thời điểm . Ðối với các hệ thống bất đồng bộ, thiết bị DTE sẽ thêm vào các bít Start và Stop ở mỗi ký tự nối tiếp này và nếu cĩ yêu cầu, bít kiểm tra chẵn lẻ cũng được thêm vào ở đây . Ðây là một dịng nối tiếp các tín hiệu nhị phân tương thích với các chuẩn về điện của EIA như RS-232C (D), RS-422A hoặc 423A. DCE là bộ phận chuyển tín hiệu ra kênh truyền. Dạng chính xác của DCE tùy thuộc vào kênh truyền, ví dụ, các DCE được dùng thúc đường dây hiện nay là RS-422A hoặc 423A cĩ thể thích hợp để truyền tín hiệu dải nền với khoảng cách tối đa là 1200m cịn nếu dùng đường dây điện thoại để truyền thì DCE tương thích phải là các Modem. Ở máy thu bộ phận giao tiếp biến đổi chuỗi ký tự nối tiếp thành song song được đọc bởi máy tính hay thiết bị truyền tin đầu cuối khác. Một bản tin báo nhận được phản hồi tới máy phát để báo nhận đồng thời báo lỗi, nếu cĩ lỗi bản tin sẽ được phát lại sau khi sửa lỗi. Trong trường hợp này máy thu đã trở thành máy phá. 4.1.2 Dung lượng của kênh truyền : Khả năng và phẩm chất của một kênh truyền xác định bởi dung lượng của nĩ. Nhắc lại, một tín hiệu tần số x , tín hiệu lấy mẫu phải cĩ tần số tối thiểu là 2x, yêu cầu một băng thơng tối thiểu là x để truyền , nếu dùng n bít để mã hĩa tín hiệu này thì vận tốc truyền sẽ là 2nx, ta gọi C = 2nx là dung lượng của kênh truyền. Ví dụ, trong điện thoại tần số tín hiệu là 2,7kHz nếu dùng 1 bít (n = 1) để mã hĩa tín hiệu thì dung lượng kênh truyền C = 5,4kbps, nếu dùng số 2 bít ( n = 2) thì C = 10,8kbps ..... Như vậy dung lượng của kênh truyền tỉ lệ với số bít dùng mã hĩa tín hiệu và băng thơng của nĩ. Nhưng khi băng thơng của kênh truyền càng lớn thì tính miễn nhiễu của hệ thống càng kém nên để gia tăng dung lượng kênh truyền người ta thường tăng số bít dùng mã hĩa tín hiệu và dùng phương pháp điều chế đa pha. 4.2 MẪU TÍN HIỆU TRONG CHẾ ÐỘ TRUYỀN BẤT ÐỒNG BỘ : Trong chế độ truyền bất đồng bộ thơng tin được truyền đi dưới dạng từng ký tự và khoảng cách các ký tự là ngẫu nhiên. Tuy nhiên để tạo sự đồng bộ giữa máy phát và thu, giao thức tầng 2 (Data link protocol) cĩ qui định cụ thể về mẫu tín hiệu trong hệ thống truyền bất đồng bộ như sau : - Mỗi ký tự gồm một số bít gọi là ký tự dữ liệu, số này cĩ thể là 5 đối với mã Baudot, 7 nếu là mã ASCII (American Standard Code for Information Interchange) và 8 nếu là mã EBCDIC (Extended Binary-Coded Decimal Information Code, mã BCD mở rộng) - Ngồi ra, để tạo sự đồng bộ, kèm theo các bít mã ký tự cịn cĩ các bít Start ở trước mỗi ký tự và các bít Sto

Các file đính kèm theo tài liệu này:

  • pdftailieu.pdf