1. Trang chủ
  2. » Giáo Dục - Đào Tạo

GIáo trình truyền dữ liêu part 6 ppsx

22 365 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 362,14 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ðể IC hoạt ñộng ở chế ñộ ñồng bộ bít D0 và D1 trong thanh ghi ñiều khiển = 00, các bít D2, D3, D4, D5 như trong phần bất ñồng bộ, bít D6 cho phép chọn thực hiện ñồng bộ từ bên trong hay

Trang 1

Dưới ñây thêm vài ví dụ về các lệnh trong vận hành của SDLC (không ghi lại mã)

Dạng tổng quát của một lệnh A , C/R P/F (0)

A ñịa chỉ trạm thứ cấp

C/R Lệnh hỏi hoặc lời ñáp

Khoảng trống dùng cho số Ns, có thể thêm dấu ( ) vào nếu cần

P/F Poll hoặc Final bit (P = On = Off, tương tự cho F)

(0) số Nr (nếu cần)

1/ Trạm thứ cấp ñược nối vào ñường dây và trao ñổi khung I, U :

B , RR - P(0) → A Polls B

← B , RIM - F B Request Initialization

B , SIM - P → A Sets B to initialization mode

← B , UA - F B Acknowledges  B is brought online through system ↓ procedures when initialization complete

B , SNRM - P → A Set B 's response mode.Nr and Ns

counts are reset to 0

← B , UA - F B Acknowledges

B , RR - P(0) → A Polls B for transmission

B , I(0) (0) → Duplex exchange of numbered I - Frame

B , I(1) (0) →  A Sends frame 1

B , I(2) (0) →  A Sends frame 2 B confirms frame 0-1  ← B ,

B , I(3) (1) →  A confirms frame 0 and sends frame

3

 ← B , I(2) F(3) B confirms frame 2 and sends frame 2

B , RR - P(3) →  A confirms frame 1-2 and Poll B

← B , RR - F(4) B confirms frame 3 ( B remains in NRM) -

-

2/ Trạm thứ cấp bận :

B , I(4) (3) → A sends numbered I - Frames

B , I(5) (3) →

Trang 2

B , I(6) (3) →

B , I(7) (3) →

B , I(0) P(3) → A Polls B

← B , RNR - F(0) B becomes busy, but confirms frame 4-7

B , RR - P(3) → A asks if B is still busy

← B , RR - F(0) B can receive again and expects frame 0

B , I(0) (3) → A sends frame 0 again

B , I(1) (3) → A continues with frame 1

B , I(2) P(3) → A sends frame 2 and poll B(gửi thăm dò)

← B , RR - F(3) B confirms frame 0 - 2 (B remains in NRM) -

-

3/ Trạm sơ cấp bận :

B , SNRM - P → A sets B 's response mode and reset the Nr

and Ns counts to 0 ← B , UA - F B Acknowledges

← B , I(0) (0) B sends numbered I - frame ← B , I(1) (0)

← B , I(2) (0) ← B , I(3) (0)

B , RNR - (3)→ A becomes busy, but confirms frame 0 - 2

← B , RR - F(0) B stops sending

← B , I(3) (0) B retransmits frame 3 ← B , I(4) (0) B sends frame 4

B , RR - P(4) → A Polls B, confirms frame 3

← B , I(4) F(0) B sends frame 4 again

B , RR - (5) → A confirms frame 4 (B remains in NRM) -

4/ Lệnh không có giá trị:

B ,XXX- P → A sends frame with an undefined C field

← B , FRMR - F B rejects the frame

Higher level at A processes the status reported by B in FRMR response

B ,SNRM - P → A resets B 's error condition

Nr and Ns counts are reset to 0

← B , UA - F B acknowledges (B remains in NRM)

Trang 3

-

-5/ Số thứ tự sai trong trao ñổi song công:

B , RR - P(0) → A polls B for transmission

← B , I(0) (0) B sends numbered I- frame

B , I(0) (0) →

← B , I(1) (0) Duplex exchange of numbered I - Frame

← B , I(2) (0)

(CRC error) B receives frame 0 with CRC error

B , I(1) (2) → A ' s frame 1 is out of numerical order (Lẻ ra phải phát lại khung 0)

← B , I(3) (0) ← B , I(4) F(0)

← B , SREJ - (0) B expects frame 0

B , I(0) (5) → A sends frame 0 again and confirms

frame 0 - 4

← B , I(5) F(0) B sends final I frame

B , I(1) (5) → A retransmits frame 1

B , RR - P(6) → A confirms frame 5 and polls B for

← B , RIM - F B asks for initialization mode

B , SIM - P → A sets B to initalization mode

← B , UA - F B acknowledges

Trang 4

B is brough on line through system procedures when initialization is complete

B , SNRM - P → A sets B on line Nr & Ns counts are reset

7/ n , I(0) (4) → A sends numbered frames to n

B , I(2) (0) → A sends numbered frames to B

n , I(1) P(4) → A concludes sending to n and requests confirmation

B , I(3) (0) → ← n , RR - F(2) A continues sending to B, n confirms frame 0

- 1

B , I(4) P(0) → A concludes sending to B and requests confirmation

← B , RR - F(5) B confirms (B & n remain in NRM)

Ví dụ 6, các trạm thứ cấp ñược kết nối, trạm sơ cấp gửi tín hiệu tới một trạm trong khi nhận tín hiệu của trạm khác

Ví dụ 7, trạm sơ cấp gửi tín hiệu tới các trạm thứ cấp

6.2.2.4 So sánh giữa Bisynch và SDLC :

Bisynch là giao thức hướng ký tự trong lúc SDLC là giao thức hướng bit Bisynch có thể dùng mã ASCII hay EBCDIC trong lúc SDLC chỉ dùng EBCDIC Ðể dò lỗi, nếu là ASCII thì dùng phép kiểm tra khối (BCC) còn khi dùng mã EBCDIC thì dùng kiểm tra dư thừa theo chu kỳ (CRC) với chiều dài mã kiểm tra là 2 byte Cả hai giao thức ñều dùng chung kích thước khung thông tin là 256 byte Ở Bisynch có chế ñộ thông suốt dữ liệu (ñể tránh nhầm lẫn dữ liệu và ký tự ñiều khiển) trong lúc ở SDLC thì dùng phương pháp nhồi bit (ñể tránh nhầm lẫn với mã Cờ)

Trang 5

6.2.2.5 Giao thức Ðiều khiển liên kết dữ liệu cấp cao (HDLC) :

HDLC ñược ISO cho ra ñời năm 1975 nhằm bổ sung một số chức năng của SDLC của

IBM Một số bổ sung có thể kể ra như sau:

- Trường ñịa chỉ mở rộng, gồm nhiều byte:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 8n

(H 6.7) Trường ñịa chỉ mở rộng

Trong trường ñịa chỉ mở rộng, ñịa chỉ xác ñịnh bơøi một số là bội của 7 bít Bít LSB

trong một byte là 0 hoặc 1 (là 0 khi byte ñó chưa phải là byte cuối cùng và là 1 khi là byte

cuối cùng của trường ñịa chỉ) 7 bít còn lại hình thành ñịa chỉ của trạm thứ cấp (H 6.7)

- Trường ñiều khiển mở rộng, gồm 2 byte (H 6.8):

- Dạng khung giám sát: ngoài các lệnh RR, RNRvà REJ, HDLC có thêm lệnh SREJ

(selective reject), lệnh này do thứ cấp yêu cầu phát lại một khung có số Nr

- HDLC có thêm 2 chế ñộ vận hành:

* Chế ñộ trả lời bất ñồng bộ (Asynchronous Response Mode - ARM) : ñây là dạng

truyền không cân bằng Trạm thứ cấp có thể khởi ñộng ñể phát mà không cần lệnh của trạm

sơ cấp Nó có thể trả lời mà không cần phải nhận ñược một khung với bit P =1 Tuy nhiên,

khi nó nhận ñược một khung với bit P =1 thì khung trả lời phải có bit F =1 Trong trường

hợp này F=1 không có nghĩa là khung cuối cùng của trạm thứ cấp

- Chế ñộ không kết nối bất ñồng bộ (Asynchronous Disconnect Mode - ADM) : ADM

tương tự như DM ngoại trừ một ñiểm là trạm thứ cấp có thể khởi ñộng chế ñộ DM hay RIM

bất cứ lúc nào

6.3 KHẢO SÁT VÀI IC LSI TRUYỀN ÐỒNG BỘ :

Chúng ta khảo sát dưới ñây hai IC tiêu biểu

- USART 8251A của Intel

- SSDA 6852 của Motorola

Trang 6

6.3.1 USART 8251A của Intel

6.3.2 SSDA 6852 của Morola

6.3.1 USART 8251A của Intel :

Baíng 6.3 Từ Control và command

EH (Enter hunt mode)

0 = ngã ra

Reset nội

IR (Internal Reset)

1 = Reset 8251A

Là IC thu phát ñồng bộ và bất ñồng bộ Trong chương 4 ta ñã khảo sát IC này trong chế ñộ bất ñồng bộ, bây giờ chúng ta tìm hiểu thêm một số tính chất của IC trong chế ñộ ñồng bộ Vận hành ở chế ñộ ñồng bộ 8251A có vận tốc truyền lên tới 64 kbps

Chi tiết các thanh ghi ñiều khiển, lệnh và trạng thái cho ở bảng 6.3 và 6.4

Trang 7

Ðể IC hoạt ñộng ở chế ñộ ñồng bộ bít D0 và D1 trong thanh ghi ñiều khiển = 00, các

bít D2, D3, D4, D5 như trong phần bất ñồng bộ, bít D6 cho phép chọn thực hiện ñồng bộ từ

bên trong hay bên ngoài và bít D7 cho phép chọn 1 hay 2 từ SYNC

- Chân SYN/BREAK của IC trong chế ñộ ñồng bộ có thể là ngã ra hoặc ngã vào và

tùy thuộc vào từ ñiều khiển trong chương trình Khi thực hiện chế ñộ ñồng bộ bên trong thì

chân này là ngã ra, ở mức thấp khi ñược reset và lên cao ñể chỉ rằng máy thu ñã nhận ñược

từ SYNC Khi máy thu thực hiện tác vụ ñọc trạng thái thì chân này tự ñộng reset Khi thực

hiện chế ñộ ñồng bộ từ bên ngoài thì chân này là ngã vào, tín hiệu dương ñến chân này báo

8251A bắt ñầu nhận dữ liệu

Bảng 6.4 8251A Status Register

D7 Data set ready

D4 Overrun error OE 1 = Overrun error

D3 Parity error PE 1 = Parity error

D2 Trans reg Empty

Tx Empty

1 = Empty

0 = Busy

D1 Receiver ready RxD 1 = Ready with new char

D0 Trans Ready TxD 1 = Ready for next char

Ghi chú: - TxRDY có nghĩa khác với chân TxRDY Chân TxRDY phụ thuộc trạng thái

chân

và bit TxEN

- Bit TxRDY lên 1 khi thanh ghi ñệm phát trống

- 82251A ở chế ñộ phát ñồng bộ

8251A bắt ñầu phát dữ liệu ngay sau khi CPU nạp từ SYNC cho ñến khi không còn

tín hiệu ñể phát, thanh ghi ñệm phát trống mà CPU không nạp ký tự kế tiếp thì 8251A tự

ñộng thêm từ SYNC vào và phát ñi

- 8251A ở chế ñộ thu ñồng bộ

- Khi sự ñồng bộ ñược thực hiện từ bên trong, lệnh ENTER HUNT phải ñược lập

trình trong từ lệnh ñầu tiên, việc này khiến 8251A dò từ SYNC trong dòng dữ liệu ñến, sau

khi dò ra USART chấm dứt chế ñộ HUNT và máy thu trong tình trạng ñồng bộ hóa, chân

SYNDET lên cao ñể báo cho µP biết

- Khi sự ñồng bộ ñược thưc hiện từ bên ngoài, xung ñồng hồ dời bít của máy thu

ñược cấp vào chân Xung này thường ñược cấp từ modem và phải ñồng bộ với dòng dữ

liệu thu ñược

Ở chế ñộ ñồng bộ, 8251A làm việc với một tần số cố ñịnh của xung ñồng hồ (chứ

không ñược chia như ở chế ñộ bất ñồng bộ) Tần số xung này phải phù hợp với vận tốc

truyền bít

Trang 8

- Khởi ñộng 8251A Tương tự như ở chế ñộ bất ñồng bộ, ngoại trừ ký tự SYNC phải ñươc lập trình như

Chân C/ ở mức cao trong 3 lần ghi

Byte ñã ghi giữa từ chọn mode và từ lệnh (command) ñã chốt vào USART là mã ký tự

ñược set = 1 (cho phép phát)

- Chờ bit TxRDY ñược set hay chân TxRDY lên cao

- Ghi ký tự kế tiếp vào thanh ghi ñệm phát

Khi truyền xong ký tự cuối cùng của khối, chân TxE (trans empty) sẽ ở High và bit

TxEn ñược set, USART tự ñộng phát từ SYNC trong suốt thời gian nghỉ

Các bit ñược dời ra cùng lúc với cạnh xuống của tín

- Thu một ký tự

Ðể thu một ký tự ở chế ñộ ñồng bộ cần thực hiện các bước:

- Ghi từ ENTER HUNT như là một phần của lệnh ñầu tiên vào thanh ghi từ lệnh

- Chờ chân SYNDET lên cao

- Chờ chân RxRDY lên cao hay bít trạng thái tương ứng ñược set (D1 thanh ghi trạng

thái = 1)

- Ðọc ký tự từ thanh ghi ñệm thu

- Ðọc trạng thái lỗi từ thanh ghi trạng thái

Những bít lỗi của thanh ghi trạng thái ñược reset nhờ từ lệnh có bít ER ñược set = 1

(D4 = 1) Các bít dữ liệu ñược dời vào cùng lúc với cạnh lên của xung ñồng hồ thu RxC

- 8251A giao tiếp với modem

(H 6.9) là một mẫu giao tiếp giữa 8251A và modem, chuẩn giao tiếp RS-449 ñược sử

dụng Xung ñồng hồ thu phát ñược cấp từ modem

Trang 9

(H 6.9) 6.3.2 SSDA 6852 của Morola :

6852 của Motorola là IC ñiều hợp ñồng bộ nối tiếp (Synchronous Serial Data Adaptor, SSDA) loại NMOS 24 chân ñược chế tạo ñể giao tiếp với họ vi xử lý 6800 của Motorola trong chế ñộ ñồng bộ (H 6.10) là sơ ñồ khối của 6852

REGISTER

11→ RS 13→

Trang 10

STATUS REGISTER

TUF SM/

TxCLK RxCLK

8 23 24 5↓ 4 3

(H 6.10)

Ý nghĩa các chân:

- , RS : Chip select, Register select -R / : Read / Write

- E : Data I/O enable & Clocking - : Interrupt Request

- : Reset -D7 – D0 : Data bus I/O

- RxCLK, TxCLK : Receive Clock, Transmitter Clock

- : Clear to send - : Carrier detect

- SM/ : Sync match/Data term ready: Ðiều hợp ñồng bộ/DTE sẳn sàng

- TUF : Trans underflow - Vcc & Vss : Power & Ground

-TxD,RxD : Transmit Data, Receive Data

Là IC chỉ có chức năng thu phát ñồng bộ, 6852 có một số chi tiết không giống như

8251A Ðặc biệt nó có bộ ñệm thu phát 3 byte hoạt ñộng theo kiểu vào trước ra trước (First

In, First Out, FIFO) Sử dụng bộ ñệm này 6852 có thể vận hành theo chế ñộ byte kép

(Double-byte) nghĩa là CPU có thể ñọc hoặc ghi ñồng thời 2 ký tự mà không phải ñợi

Việc chọn chế ñộ vận hành và ñiều khiển ở SSDA ñều thông qua µP bằng cách ghi

vào 3 thanh ghi ñiều khiển Các trạng thái lỗi và bắt tay ñược ñọc từ thanh ghi trạng thái Vị

trí bít của các thanh ghi cho trong bảng 6.5 và 6.6

Bảng 6.5 Các từ trong thanh ghi ñiều khiển của 6852

AC2

00: Chọn CR2 01: Chọn CR3 10: T G mã Sync bit 6

Không sử dụng

Phát từ Sync khi underflow

Tx Sync

1 = Phát từ Sync

0 = Phát bit 1 khi underflow

AC1

11:Chọn TxFIFO Reg (khi RS=1và R/

=0 )

selector WS3

000-6 + parity chẵn 001-6 + parity lẻ 010-7 bits

Cho phép ngắt thu RIE

1: Chân tác ñộng

Trang 11

bit 4 WS2 011-8 bits

100-7 + parity chẵn 101-7 + parity lẻ

Cho phép ngắt phát TIE

1: Chân tác ñộng

bit 3 Xóa cờ

CTUF

1: Xóa TUF

Bit ñiều khiển ngoại vi

PC2

00: SM/ = 1 10: SM/ = 0 01:SM/ = xung

Reset phát TxRS

1= Reset phát

PC1

ñồng bộ 11-SM/ = 0 Vô hiệu hóa xung ñồng

bộ

Reset thu RxRS

1= Reset thu

Control Reg.3

CR3)

Control Register 2 (CR2) Control Reg.1(CR1)

Ðối với µP 6852 chỉ xuất hiện bằng hai cách ñịnh ñịa chỉ (chân RS ở High và CS ở Low-

Thường CS ñược nối với ñường ñịa chỉ A0) Từ sơ ñồ khối ta thấy có 7 thanh ghi trong 6852

có thể ñược µP truy xuất

Ngoại trừ thanh ghi ñiều khiển 1, tất cả các thanh ghi khác ñều chỉ có thể ñọc hoặc chỉ

có thể ghi tùy chức năng

Trạng thái của ñường R/ ñược dùng ñể chọn nhóm thanh ghi chỉ ñọc hay chỉ ghi

Từ bảng 6.5 ta thấy 2 bit có trọng số lớn nhất trong thanh ghi ñiều khiển 1 ñược dùng

ñể ñịnh ñịa chỉ các thanh ghi khác Việc ñịnh ñịa chỉ có thể tóm tắt như sau:

RS R/ b7 b6

Trang 12

0 1

0 0

1 1

1 0

1 0

1 0

1 0

x x

x x

x x

0 0

0 1

1 0

1 1

Thanh ghi trạng thái Thanh ghi ÐK CR1 Thanh ghi Rx FIFO Thanh ghi ÐK CR2 Thanh ghi ÐK CR3 Thanh ghi mã SYNC Thanh ghi Tx FIFO Duyệt qua các bít trong thanh ghi trạng thái và ñiều 13 bit 7 Yêu cầu ngắt IRQ 1 = Chân tác ñộng bit 6 Parity error PE 1 = Có lỗi parity Reset khi ñọc RxFIFO or ghi vào CR1 với RxRS = 1 bit 5 Receiver Overrun Rx OVRN 1 = Có lỗi tràn Reset khi ñọc Status Reg và RxFIFO hay ghi vào CR1 với RxRS=1

bit

4

Transmitter

Underflow

TUF

1= Có lỗi Underflow Reset khi ghi vào CR3 với CTUF và/hoặc TxRS = 1

bit

3

Clear to send 1= từ lần xóa cuối cùng

Reset khi ghi vào CR3 với và/hoặc TxRS = 1 bit

2

Carrier Detect 1 = từ lần xóa cuối cùng

Reset khi ñọc Status Reg và RxFIFO hay ghi vào CR1 với RxRS=1

bit

1

Transmitter data

register available

TDRA

1= Có hiệu lực Reset khi ghi vào TxFIFO

bit

0

Receiver data

available

RDA

1 = Có hiệu lực Reset khi ảo RxFIFO

- Khởi ñộng 6852

Khởi ñộng 6852 bao gồm các bước sau :

Trang 13

- Reset chip bằng cách ghi từ ñiều khiển vào thanh ghi CR1 và xác ñịnh ñịa chỉ thanh ghi CR3

- Ghi từ ñiều khiển mong muốn vào thanh ghi CR3 (chọn số từ SYN và chế ñộ ñồng bộ)

- Ghi từ ñiều khiển vào thanh ghi CR1 ñể duy trì ñiều kiện reset và xác ñịnh ñịa chỉ thanh ghi CR2

- Ghi từ ñiều khiển mong muốn vào thanh ghi CR2

- Ghi từ ñiều khiển vào thanh ghi CR1 ñể duy trì ñiều kiện reset và truy xuất thanh ghi

mã ñồng bộ kế tiếp

- Ghi mã mong muốn vào thanh ghi mã ñồng bộ

- Ghi từ ñiều khiển mong muốn vào thanh ghi CR1 (bao gồm việc cho phép thu và (hoặc) phát)

- Phát một ký tự

- phải ở mức thấp và bit TxRS phải ñược xóa

- Chờ bit TDRA trong thanh ghi trạng thái (Trans Data Register Available) ñược set -Viết mã ký tự phát vào bộ ñệm TxFIFO

Chu trình ñược lặp lại cho tới khi cả khối dữ liệu ñược phát Nếu CPU không cung cấp Data ñủ nhanh ñể máy phát phát, ta nói máy phát ở tình trạng underflow và bít TUF lên cao, lúc ñó SSDA tự ñộng thêm từ SYNC vào ñể phát ñi Bít TUF là một cờ ñược reset bởi bít b3=1 trong CR3

Các bít ñược dời ra ngoài khi có cạnh xuống của xung ñồng hồ tại ngã vào TxCLK

- Thu một ký tự

Ðể thu một ký tự ngã vào phải ở LOW và bít RxRS phải ñược xóa Các bít tới máy thu ñược so sánh với mã SYNC trong thanh ghi mã ñồng bộ ñến khi có sự tương ứng (nhận dạng từ SYNC)

- Chờ cho tới khi RDA ñược set

- Ðọc trạng thái lỗi trong thanh ghi trạng thái

- Ðọc mã ký tự từ bộ ñệm RxFIFO

Các bít dữ liệu ñược lấy mẫu ở cạnh lên của xung clock thu tại chân RxCLK

6.4 KIỂM TRA HỆ THỐNG THÔNG TIN

6.4.1 Kỹ thuật tương tự - Phép ño tỷ số PAR

6.4.2 Phép ño biến dạng dùng biểu ñồ mắt

Ngày đăng: 26/07/2014, 08:21

HÌNH ẢNH LIÊN QUAN

Bảng 6.4 8251A  Status  Register - GIáo trình truyền dữ liêu part 6 ppsx
Bảng 6.4 8251A Status Register (Trang 7)
Bảng 6.5  Cỏc từ trong thanh ghi ủiều khiển của 6852 - GIáo trình truyền dữ liêu part 6 ppsx
Bảng 6.5 Cỏc từ trong thanh ghi ủiều khiển của 6852 (Trang 10)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w