CHƯƠng 1 TỔng quan về KỸ thuật truyền số liệU


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



tải về 0.93 Mb.
trang4/9
Chuyển đổi dữ liệu07.07.2016
Kích0.93 Mb.
1   2   3   4   5   6   7   8   9

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ự ngoà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.




1   2   3   4   5   6   7   8   9


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2019
được sử dụng cho việc quản lý

    Quê hương