PARALLEL COMMUNICATION OVERVIEW
In the Beginning
The original 8-bit parallel port was developed by IBM in 1981 as a faster interface
to dot matrix printers than the then standard one-bit serial
port. The parallel port greatly increases transfer speeds by using an eight
wire connector which transmits the eight bits in a byte of data simultaneously,
thus sending an entire byte of data in the time it takes to send a single bit
in a serial system. This byte of data is supplemented by several other handshaking
signals, each sent on its own wire, which ensure that data transfer takes place
smoothly.
 |
| Serial vs. Parallel Communication
|
The major drawback to the original parallel port or Standard Parallel Port (SPP)
was that it allowed for communication in only one direction--computer to printer.
While there were wires which the printer could use to indicate its status to
the computer, it could do no more than put a positive or negative charge on
these wires. (See the table below for a comparison of parallel protocols.) This
arrangement effectively limited the parallel port's potential and precluded
it from being used in bi-directional communication such as is required for external
storage devices.
| PIN |
SPP Function |
EPP Function |
| 1 |
STROBE: Used by computer to tell printer that a complete character has been
transmitted and is ready for printing |
WRITE: Indicates a write or read cycle is in progress |
| 2-9 |
Data transmission from computer to printer |
Bi-directional address/data lines |
| 10 |
ACK: Used by printer to tell computer it has received and printed the transmitted
data and is ready for more. |
INTR: Used by an EPP peripheral to generate an interrupt on the host computer
|
| 11 |
BUSY: Used by printer to regulate data flow from computer |
WAIT: Handshaking signal indicates when a read or write cycle may be stopped or
begun |
| 12 |
PE: Used by printer to tell computer it is out of paper |
Defined differently by each EPP peripheral |
| 13 |
SELECT: Used to indicate to the computer that the printer is online |
Defined differently by each EPP peripheral |
| 14 |
AUTOFEED: Printer carriage return |
DATASTB: Indicates that a Data_Read or Data_Write is in progress |
| 15 |
ERROR: Printer indicates an unspecified operational error |
Defined differently by each EPP peripheral |
| 16 |
INIT: Computer initializes printer |
RESET: EPP Peripheral is reset by computer |
| 17 |
SELECTIN: Allows printer to be brought on or off line by computer |
ADDRSTB: Indicates an Address_Read or Address_Write operation |
| 18-25 |
Ground |
Ground |
The EPP Advantage
IBM soon realized the advantages to be gained from enabling the parallel port for
bidirectional communication. While early bidirectional efforts did indeed provide
for two way transfer, they did little to make the parallel port a viable alternative
for high speed data transfer.
To address this problem, a new standard for parallel communications, known as IEEE
1284 for the committee which established it, was approved in 1994. This new
standard sought to correct the major drawbacks to the original parallel port
structure. The first major drawback was that not all parallel peripherals used
the same mechanical interface, and thus the maximum cable distance between computer
and peripheral could only extend 6 feet. IEEE 1284 sets standards for the cable,
connector and electrical interface which guarantees interoperability between
all parallel peripherals. The specified configuration ensures that data integrity
is maintained, even at the highest data rates, and at a distance of up to 30
feet.
IEEE 1284 also set design standards for true bidirectional communication between
devices. However, the real advance came with the Enhanced Parallel Port (EPP)
protocol. EPP utilizes data cycles that not only enable bidirectional communication,
but also provide for real-time data transfers by permitting intermixing of block
transfers, read operations and write operations.
The EPP specification also solves the speed problem. Parallel data transfer was
largely performed by software in SPP systems, and thus data transfer rates were
limited to 150 kbps. The new EPP standard specifies a hardware driven handshake
system of data transfer that allows significantly higher transfer speeds--up
to 2 Mbps. In EPP mode, data transfer takes place as a single software instruction,
and the rest of the transfer is handled by hardware. This allows an EPP port
to function as a 16- or 32-bit data transfer interface using 8-bit I/O hardware,
in effect enabling EPP peripherals to achieve the same speed and efficiency
as their ISA bus counterparts.
|