
Figure 1 shows the logic required to implement an IEEE-1284-compliant parallel port, using the Am29202 RISC processor. The IEEE-1284 spec allows for multiple modes of operation. The first is the compatibility mode, which designates the parallel port of the original IBM PCs. This mode has a peak download capability of 220 kbytes/sec.
The second mode, nibble, provides for two-way communication between the host and peripheral. By using the control signals from the compatibility mode, the peripheral can send 4 bits of data to the host. Nibble mode is very slow and software-intensiveperformance can range between 2 and 20 kbytes/sec, depending on the host CPU and the amount of software overhead.
Reverse-byte mode is an improvement over nibble mode. This mode implements a full 8-bit transfer from the peripheral to the host PC.
The final mode is the extended-capabilities port (ECP) mode. This mode provides for bidirectional transfers and significantly improves the transfer capabilities of the host to the printer. ECP mode is capable of 2 Mbyte/sec data transfers.
Current PCs use all four modes. The Am29202, which supports these modes, typically serves as the controller in a printer or as an I/O processor for a smart peripheral. IEEE-1284 transfer modes are an integral part of Windows 95 plug-and-play. The plug-and-play strategy needs two-way communications with other devices. The smarter the device or peripheral is, the more important the IEEE-1284 implementation will be for parallel-port-oriented communications devices. (DI #1818)