Chuẩn giao tiếp cổng song song

Một phần của tài liệu Bài giảng điều khiển bằng máy tính (Trang 66 - 70)

IEEE 1284 là một tiêu chuẩn về giao diện ngoại vi song song hai chiều cho máy tính cá nhân. Chuẩn này được đưa ra phiên bản cuối cùng (final release) vào tháng 3 năm 1994. Tiêu chuẩn này định nghĩa các đặc trưng vật lý, phương thức truyền dữ liệucủa cổng song song.

IEEE 1284 đặt ra để tiêu chuẩn hoá việc kết nối giữa máy tính với mộtthiết bị ngoại vi có tính chất cố định, tuy nhiên khi mở rộng chúng với các loại thiết bị ngoại vi mang tính di chuyển (như các loại máy quét, ổ đĩa di động) chúng cũng được hỗ trợ. Băng thông của các loại cổng song song theo chuẩn IEEE 1284 được liệt kê theo bảng sau

Loại cổng song song

Hướng truyền (Direction)

Băng thông (Transfer Rate)

Nibble (4-bit) Input only 50 KBps

Byte (8-bit) Input only 150 KBps

Compatible Output only 150 KBps

EPP (Enhanced Parallel Port) Input/Output 500 KBps-2,77 MBps ECP (Enhanced Capabilities Port) Input/Output 500 KBps-2,77 MBps

Như vậy các chuẩn giao tiếp của cổng song song được chia ra làm 5 chế độ hoạt động như sau:

- Chế độ tương thích (Compatibility). Chế độ tương thích truyền dữ liệu theo các giai đoạn sau :

+ Máy chủ báo sẵn sàng nhận bằng cách đưa HostBusy về 0 . + Thiết bị ngoại vi báo byte đầu tiên lên dây dữ liệu.

+ Thiết bị ngoại vi báo byte có giá trị bắng cách đặt PtrClk về 0.

+ Máy chủ đưa Hot Busy lên 1, báo đã nhận được byte và chưa sẵn sàng cho byte khác.

+ Thiết bị ngoại vi chứa PtrClklên 1 để báo cho máy chủ, máy chủ đưa HostClk lên 1 để trả lời .

+Chế độ Nibble.

Chế độ nible là chế độ thường dùng nhất để nhận dữ liệu từ thiết bị ngoại vi về máy tính. Chế độ này phối hợp với chế độ cơ bản thành một giao diện song song truyền dữ liệu hai chiều . Giao diện cơ bản có 5 tín hiệu vào máy vi tính để báo trạng thái thiết bị ngoại vi. Dùng các tín hiệu này, thiết bị ngoại vi có thể truyền một byte về máy vi tính qua hai chu kỳ, mỗi chu kỳ một nibble.

+Chế độ Byte.

Từ thế hệ máy PS/2 của IBM, bộ khuếch đại dữ liệu được ngắt mạch để dùng 8 tín hiệu dữ liệu theo chiều ngược lại (chiều vào). Chế độ này cho phép thiết bị ngoại vi truyền một lúc 8 bit về máy chủ , thay vì hai lần như chế độ nibble . Chế độ này có tốc độ gần bằng chế độ tương thích . Chế độ byte còn được gọi là chế độ cổng hai chiều cải tiến (enhanced bi-directional port ) .

+Chế độ EPP (Enhanced Parallel Port).

Phiên bản truyền cổng song song cải tiến EPP được các hãng Intel , Xircomva Zenith Data Systems thiết kế. Phiên bản này được cài đặt trong các vi mạch Chipset của Intel trước khi chuẩn 1284 ra đời. Chế độ EPP có bốn chu kỳ truyền dữ liệu:

+ Chu kỳ dữ liệu + Chu kỳ đọc dữ liệu + Chu kỳ ghi địa chỉ + Chu kỳ đọc địa chỉ

Các tín hiệu giao diện song song trong chế độ EPP

CHÂN TÍN HIỆU Ý NGHĨA

1 Write, ra Xuống 0 khi ghi lên 1 khi đọc 14 Datastrobe, ra Xuống 0 khi đọc hoặc ghi dữ liệu 16 Addrstrobe, ra Xuống 0 khi đọc hoặc ghi địa chỉ 17 Reset, ra Khởi động thiết bị ngoại vi khi bằng 0

10 Intr, vào Được dùng để truyền yêu cầu ngắt từ thiết bị ngoại vi về máy chủ

11

Wait, vào Wait=0 cho phép bắt đầu chu kì truy nhập, Wait=1 cho phép kết thúc chu kì truy nhập

12 Tuỳ chọn, vào Cho phép thiết bị ngoại vi tự qui định 13 Tuỳ chọn, vào Cho phép thiết bị ngoại vi tự qui định 15 Tuỳ chọn, vào Cho phép thiết bị ngoại vi tự qui định 2-9 Vào/ra Bus dữ liệu hai chiều

Chế độ EPP cần nhiều thanh ghi hơn và bổ sung thêm 3 thanh ghi (địa chỉ lệch từ 3 đến 7). Địa chỉ các cổng này được tính bằng cách cộng địa chỉ lệch với địa chỉ cơ sở của cổng song song 378H (278H). Khi ghi dữ liệu ra cổng 37CH (27CH), phần cứng sẽ tự động quản lý các tín hiệu bắt tay của chu kỳ ghi . Ghi lên các cổng cơ bản 378H - 37AH sẽ nhận được phản ứng của giao diện song song chuẩn SPP. Chu kỳ đọc/ghi địa chỉ cũng được tiến hành khi ghi hoặc đọc cổng 37BH (27BH).

Các thanh ghi có địa chỉ lệch từ 5 đến 7 được các nhà sản xuất vi mạch SuperIO sử dụng tuỳ ý . Những thanh ghi này có thể được dùng làm cổng vào ra 16 hoặc 23 bit .

Chế độ EPP ghi dữ liệu theo các giai đoạn sau :

+ Chương trình thực hiện lệnh ghi ra thanh ghi dữ liệu EPP

+ Tín hiệu WRITE xuống 0 và dữ liệu được chuyển ra đường dữ liệu + Tín hiệu DATA STB xuống 0trong khi WAIT cũng xuống 0 + Cổng EPP đợi tín hiệu nhận từ thiết bị ngoại vi (WAIT =1) + Tín hiệu DATA STB lên 1 và chu kỳ kết thúc

+ Chu kỳ đọc /ghi của bus ISA trong máy tính kết thúc + Tín hiệu WAIT xuống 0 , báo chu kỳ tới có thể bắt đầu

Quá trình truyền dữ liệu trên EPP xảy ra trong 1 chu kỳ đọc /ghi của bus ISA trong máy vi tính. Như vậy dùng EPP, máy vi tính có thể truyền dữ liệu với tốc độ 500Kbyte đến 2 Mbyte trong 1 giây. Như vậy thiết bị ngoại vi có thể làm việc nhanh như một bản mạch cắm ISA bên trong máy tính.

- Chế độ ECP (Extended Capabilities Port).

Cổng có khả năng mở rộng ECP(Extended Capability Port) được các hãng Hewlett Packard và Microsoft thiết kế nhằm cải thiện quá trình truyền dữ liệu giữa máy chủ và máy in cũng như máy quét hình. Chế độ EPP cho pháp hai chu kỳ truyền dữ liệu theo hai hướng: chu kỳ dữ liệu và chu kỳ lệnh.

Chu kỳ lệnh được chia thành hai loại :

+ Đếm chiều dài chạy (run- length count ), + Kênh địa chỉ (channel address )

Khác với EPP , khi phiên bản ECP được đề nghị , Microsoft đã có một chuẩn với các khả năng mà IEEE 1284 không đáp ứng được như: mã chiều dài chạy RLE (run length encoding), nén dữ liệu, đệm FIFO cho hai hướng, DMA và cổng vào ra lập trình được.

RLE cho phép nén dữ liệu trong thời gian thực đến tỷ lệ 64:1. Phương pháp này rất thuận lợi cho máy in hay máy quét có dữ liệu dạng bitmap và có nhiều dữ liệu lặp lại Để dùng được RLE, cả thiết bị ngoại vi và máy chủ cần cài đặt nó .

Phương pháp định địa chỉ kênh của ECP khác với EPP. Phương pháp định địa chỉ cho phép truy nhập nhiều kênh khác nhau trong một thiết bị vật lý duy nhất (chẳng hạn một máy đa chức năng FAX, máy in, MODEM ). Phương pháp này cho phép nhiều thiết bị của máy đa chức năng chạy đồng thời và cùng trao đổi dữ liệu với máy tính qua mộtgiao điện song song duy nhất.

Hai chu kỳ truyền dữ liệu hướng ra, HostAck lên một báo đó là chu kỳ dữ liệu. HostAck xuống 0 báo đó là chu kỳ lệnh và giữ liệu được truyền là một số đếm RLE hay địa chỉ kênh. Bit 7 của dữ liệu được dùng làm cờ phân biệt nội dung. Bit 7 bằng 0 thi bit 0 đến 6 là số đếm RLE (0-127). Bit 7 bằng 1 thì nội dung bit 0 đến bit 6 là địa chỉ kênh 0 đến 127 của thiết bị ngoại vi.

Chế độ ECP ghi dữ liệu của các giai đoạn sau:

+Máy chủ đặt dữ liệu lên đường dữ liệu và đưa HostAck lên một báo chu kỳ dữ liệu (0 cho lệnh ).

+Máy chủ đưa HostClk xuống 0 báo dữ liệu có giá trị

+ Thiết bị ngoại vi chấp nhận dữ lệu bằng cách đưa PeriphAck lên một + Máy chủ đưa HosttClk lên một, bắt đầu truyền dữ liệu.

+Thiết bị ngoại vi đưa PeriphAck xuống không báo sẵn sàng cho Byte tới. Chu kỳ tiếp tục

Chế độ ECP nhận dữ liệu theo các giai đoạn sau:

+Máy chủ đặt đưa RevertRequest xuống không báo hướng vào.

+Thiết bị ngoại vi AckReserve xuống 0 chấp nhận yêu cầu chuyển hướng

+ Thiết bị ngoại vi đưa dữ liệu lên đường dữ liệu và báo chu kỳ dữ liệu bằng cách đưa PeriphAck lên một ( 0 cho chu kỳ lệnh)

Thiết bị ngoại vi đưa PeriphClk xuống 0 báo dữ liệu có giá trị + Máy chủ chấp nhận bằng cách đưa HostAck lên 1

+ Thiết bị ngoại vi đưa PeriphClk lên 1 và bắt đầu truyền dữ liệu về máy chủ. + Máy chủ đưa HostAck xuống 0 báo sãn sàng nhận byte tiếp theo.

Chu kỳ tiếp tục từ 1 đến 7.

Giao diện ECP định nghĩa nhiều chế độ làm việc cho các thanh ghi của nó . Mô hình các thanh ghi ECP tương tự như SPT.

Vi du: nếu muốn gửi một chuỗi gồm 25 kí tự ’A’, thì đầu tin máy tính sẽ gửi một byte

RUN COUNT (xác định số lần lặp lại của byte theo sau nó) bằng 24. Tiếp theo gửi byte ‘A’.Thiết bị ngoại vi khi nhận được lệnh RLE, nó sẽ lặp lại byte tiếp theo một số lần xác định thông qua RUN COUNT.

Để dùng được RLE, cả thiết bị ngoại vi và máy chủ cần cài đặt nó. Phương pháp định địa chỉ cho phép truy nhập nhiều kênh khác nhau trong một thiết bị vật lý duy nhất (chẳng hạn một my đa chức năng FAX,my in, MODEM).

Phương pháp này cho phép nhiều thiết bị của máy đa chức năng chạy đồng thời và cùng trao đổi dữ liệu với máy tính chủ qua một giao diện song song duy nhất. và Để phân biệt lệnh l RLE hay địa chỉ thì phải dựa vào bit 7 của đường dữ liệu:

+Bit 7 bằng 1 thì bit 0 đến bit 6 là địa chỉ kênh 0 đến 127 của thiết bị ngoại vi. +Bit 7 bằng 0 thì bit 0 đến bit 6 là số đếm RLE (0-127).

+Các tín hiệu trong chế độ ECP:

Chân Tín hiệu Vào/ra Ý nghĩa

1 Hostclk Ra Cùng với periphack truyền dữ liệu và địa chỉ

ra thiết bị ngoại vi

2-9 D0-D7 Vào/ra Bus dữ liệu 2 chiều

10 Hostack Ra

Báo trạng thi dữ liệu hay lệnh của hướng ra, cùng với periphclk để nhận dữ liệu từ thiết bị ngoại vi

11 1284active Ra Lên 1 khi chuẩn 1284 hoạt động

12 Reverserequest Ra Xuống 0 đường dữ liệu có chiều vào, lên 1 đường dữ liệu có chiều ra

13 Periphclk Vào Cùng với hostack nhận dữ liệu và địa chỉ từ thiết bị ngoại vi

14 Periphack Vào

Báo trạng thi dữ liệu hay lệnh của hướng vào, cùng với hostclk để truyền dữ liệu ra thiết bị ngoại vi

15 Ackrerseve Vào Xuống 0 khi thiết bị ngoại vi chấp nhận rerserverequest

16 Xflag Vào Cờ byte mở rộng

17 PeriphRequest Vào Thiết bị ngoại vi cho xuống 0 khi cho phép hướng vào máy chủ

18-25 Ground ground

Một phần của tài liệu Bài giảng điều khiển bằng máy tính (Trang 66 - 70)

Tải bản đầy đủ (PDF)

(155 trang)