2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Parallel Port When a parallel port is IEEE 1284 compliant, it supports EPP and ECP modes at data rates up to 2 Mbytes/sec over cables as long as 10 meters. From: Data Acquisition Techniques Using PCs (Second Edition), 2003 Related terms: Semiconductor, Dielectrics, Amplifier, Resistors, Oscillators, Transistors, Transducers, Amplitudes, Transformers, Electric Potential Parallel Port William Buchanan BSc (Hons), CEng, PhD, in Computer Busses, 2000 16.7 Notes from the author The parallel port is hardly the greatest piece of technology. In its truly standard form, it only allows for simplex communications, from the PC outwards. However, like the RS232 port, it’s a standard part of the PC, and its cheap. So, interface designers have worked under difficult circumstances to try and improving its specification, such as increasing its bit rate and allowing multiple devices to connect to it at the same time, but it still suffers from a lack of controllability. Anyone who has changed the interface of a device from the parallel port to the USB will know how much better the USB port is over the parallel port. The parallel port and RS-232 are the two top requests that I get from users, especially related to project work. The Top 10 requests, in order of the most requests I have received, are: 1. RS-232. 6. Interrupt-driven software. 2. Parallel Port. 7. PCMCIA. 3. Converting a DOS program to Microsoft Windows. 8. Network card design. 4. Borland Delphi interfacing. 9. Visual Basic interfacing 5. ISA card design. 10. Using, buffered systems. One of the most amusing emails that I ever received related to an ISA card which I had drawn. In the card, I had drawn a few chips, to basically show that it had some electronics on it. So that the chips would not be confused with real chips I labelled one of them XYZ123. One user sent me an email saying: ‘Thanks for … Please could you tell me the function of the XYZ123 device. I have searched for this component, and cannot find any information on it. Please could you send me some’ I didn’t really have the heart to write back to the user and say that it was https://www.sciencedirect.com/topics/engineering/parallel-port 1/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics a made-up chip, so I sent an email back saying that it was not available at the present time (which was true). So why has the serial port become more popular than the parallel port. Well it’s because of one reason: since PC’s started, the serial port has always been a standard port and most manufacturers abide with it, whereas the parallel port was a quick fix so that the original PC could communicate with a printer. In its standard form, it can only send information in a single direction, and, even worse, only eight bits can be sent at a time. Nevertheless, it has survived, and now has several uses, especially with printers, scanners and external CDROMs. So it will hold the fort for a few years yet before the USB port takes over in creating a truly integrated bus system. But, you may say, the USB port is serial. So why transmit one bit at a time when you can transmit 8 or 16 or even 32 bits at a time. Well it’s all to do with the number of wires that must be connected. A serial bus always has the advantage over a parallel bus, in that you only really need one signal line in a serial bus to transmit all the data. This saves space in both the connector, and in the cable. It is also cheaper to install. Personally, I think that there is no better bus for a student to start to learn how to interface to external devices. It is relatively easy to build the interface electronics, and to connect a few LEDs. How great it is to see a student’s face after they have written their first program to make a few LEDs flash on and off. I remember a third year student commented: ‘I’ve been programming for three years, and finally, we’re doing something real.’ Whether you agree with this comment or not depends on the type of programming that you would like to do. Some of us like doing databases, some like writing userinterfaces, but there are lots who like to make computers sense things and make physical things happen. In the past, especially in the 1970s and 1980s, electronic engineers used breadboards and wires to prototypes circuits. Sometimes the circuits blew-up, or times they would stop working, but at least you knew where you were with the electronics. These days with massively integrated circuits, it is difficult to know one end of a microchip from another. They normally work first time, they’re easy to connect to, and when they don’t work you just throw them in the bin. Image the size of the bin that would have been required if someone had had build a Pentium processor from the discrete transistors (over 20 million of them). Image the heat that would have been generated. Assuming 15 mW for each transistor, the total power would be 300 kW, which is equivalent to the heat given of by 3000 100 W light builds, or 300 1 kW heaters. So it shows how far we have come in such a short time, as now we can touch the processor, and it just feels a little hot. Personally, I would have no problems in going back to the days when transistors had three legs and a tin hat, and you had to look up a data sheet to tell which of the legs was the base, and which was the collector. So, as the technology has moved on, the parallel port seems like an old friend. It has watched the PC develop as the inners have become more integrated and faster, but it has never really been a high flier, preferring instead to quietly perform its duties without much bother. From CGA and EGA to VGA, from the serial port to the USB port, from 5.25inch floppy disks to 6550 MB CD-ROMs, and so on. But, there’s no way that the parallel port could be allowed to stay as it was in the original parallel specification. It has potential, but that potential is severely limited because it must always keep compatibility with previous ports. So how is it possible to connect a printer on the parallel port, and other devices, without the printer reading communications that are destined for another device. If it wasn’t the PC, the designers would have simply ripped up the original specification, and started again. But, you don’t do that with the PC, or you’ll not sell. So, we’ll see in the next chapter how the parallel port has been dragged into the modern age. But, as we’ll see, it’s more like a difficult toddler, than an enterprising businessman. The prize for the best upgrade goes to Ethernet, which has increased its transmission rate by a factor of 100 (10Mbps to 1Gbps). Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B978034074076750016X https://www.sciencedirect.com/topics/engineering/parallel-port 2/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Data transmission interfaces Peng Zhang, in Advanced Industrial Control Technology, 2010 (2) Parallel ports A parallel port is a type of interface found on computers (personal and otherwise) for connecting various peripherals. The IEEE-1284 standard defines the bidirectional version of the parallel port. In its standard form, it allows only for simple communications from the PC outwards. However, like the RS-232, the parallel port is a standard port of the PC. All parallel ports use a bidirectional link in either a compatible, nibble, or byte mode. These modes are relatively slow, as the software must monitor the handshaking lines (up to 100 kbps). To allow high speeds, the enhanced parallel port and extended capabilities port protocol modes allow high-speed data transfer using automatic hardware handshaking. Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B9781437778076100142 Enhanced Parallel Port William Buchanan BSc (Hons), CEng, PhD, in Computer Busses, 2000 17.5 EPP The enhanced parallel port (EPP) mode defines a standard bidirectional communications mode and is used by many peripherals, such as CD-ROMs, tape drives, external hard disks and so on. The EPP protocol provides four types of data transfer cycles: 1. Data read and write cycles – These involve transfers between the host and the peripheral. 2. Address read and write cycles – These pass address, channel, or command and control information. Table 17.3 defines the names of the signal in the nibble mode. The occurs automatically when the host writes data to the output lines. Table 17.3. EPP mode signals Compatibility signal name EPP mode name https://www.sciencedirect.com/topics/engineering/parallel-port In/out Description Out A LOW for a write operation while a HIGH indicates a read operation. Out Indicates a data read or write operation. Out Indicates an address read or write operation. Out Peripheral reset when LOW. 3/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Compatibility signal name EPP mode name BUSY In/out Description In Peripheral sets this line LOW when it wishes to interrupt to the host. In When it is set LOW it indicates that it is valid to start a cycle, else if it is HIGH then it is valid to end the cycle. PE User defined In Can be set by each peripheral. SELECT User defined In Can be set by each peripheral. User defined In Can be set by each peripheral. AD0-AD7 In/out Bidirectional address and data lines. D0- D7 The data write cycle has the following sequence: 1. Program executes an I/O write cycle to the base address port + 4 (EPP data port), see Table 17.4. Then the following occur with hardware: Table 17.4. EPP register definitions Port Name I/O address Read/Write Description Data register BASE_AD Status register BASE_AD +1 R Control register BASE_AD +2 W EPP address port BASE_AD+3 R/W Generates EPP address read or write cycle EPP data port BASE_AD+4 R/W Generates EPP data read or write cycle 2. The 3. The 4. W line is set LOW, which puts the data on the data bus. is then set LOW. The host waits for peripheral to set the 5. The and line HIGH. are then HIGH and the cycle ends. The important parameter is that it takes just one memory-mapped I/O operation to transfer data. This gives transfer rates of up to 2 million bytes per second. Although it is not as fast as a peripheral transferring over the ISA, it has the advantage that the peripheral can transfer data at a rate that is determined by the peripheral. 17.5.1 EPP registers Several extra ports are defined, these are the EPP address register and EPP data register. The EPP address register has an offset of three bytes from the base https://www.sciencedirect.com/topics/engineering/parallel-port 4/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics address and the EPP data register is offset by tour bytes. Table 17.4 defines the registers. Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B9780340740767500171 Standard Hardware Interfaces Howard Austerlitz, in Data Acquisition Techniques Using PCs (Second Edition), 2003 The Enhanced Parallel Port The Enhanced Parallel Port (EPP) was originally developed by Xircom Inc., Zenith Data Systems, and Intel Corp. as a next-generation parallel port. It is a fully bidirectional port with a typical data rate of about 800 Kbytes/sec and a peak rate of 2 Mbytes/sec. The EPP uses a data register up to 32 bits wide (if it is running on a 32-bit processor) to speed up data transfers to the PC bus. The EPP uses hardware to handle all the details of partitioning 32-bit data into 8-bit transfers and controlling handshaking with the peripheral device (printer). Only one I/O port operation is required to write (or read) parallel port data. These features, along with stringent timing control, allow EPP to operate as fast as 2 Mbytes/sec (500 nsec for a single transfer cycle). The EPP's pin assignments are shown in Table 8-2. EPP is backward compatible with a standard parallel port (often designated SPP). There are only six control lines used by EPP's hardware handshaking protocol. A signal name beginning with “n” indicates that it is active low. The nWRITE signal indicates whether the current cycle is a write or read operation. The INTR line is used by a peripheral to signal the PC that it needs service. The nWAIT signal is part of the hardware handshake and is used by the peripheral to signal that it has finished the transfer. The nDSTRB line indicates that there is valid data on the AD0–AD7 lines. The nINIT signal, when asserted, forces the interface out of EPP mode and into SPP mode. The nASTRB line indicates that there is a valid address on the AD0–AD7 lines. TABLE 8-2. Enhanced Parallel Port (EPP) Pin Assignments PIN # SIGNAL NAME DIRECTION 1 nWRITE OUT 2 AD0 IN/OUT 3 AD1 IN/OUT 4 AD2 IN/OUT 5 AD3 IN/OUT 6 AD4 IN/OUT 7 AD5 IN/OUT 8 AD6 IN/OUT 9 AD7 IN/OUT 10 INTR IN https://www.sciencedirect.com/topics/engineering/parallel-port 5/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics PIN # SIGNAL NAME DIRECTION 11 nWAIT IN 12 Spare (unused) IN 13 Spare (unused) IN 14 nDSTRB OUT 15 Spare (unused) IN 16 nINIT OUT 17 nASTRB OUT 18–25 GROUND N/A EPP support four types of cycles: data write, data read, address write, and address read. An address refers to a register on the peripheral (printer or other device). Once an address is specified, data transfers, including bursts or multiple bytes, can occur between the PC and the register. Figure 8-4 shows a simple EPP data write cycle. The nWRITE line first goes low to indicate a write cycle. Data is placed on the AD0–7 lines and nDSTRB is asserted (as long as nWAIT is low). The EPP waits for the handshake from the peripheral when nWAIT goes high. Then, nDSTRB is negated (high). When the peripheral is ready for another transfer, it sets nWAIT low again. If nWAIT never goes high (because of a hardware failure) the EPP times out after about 10 μsec. Figure 8-4. EPP Data Write cycle. The EPP uses the original three SPP registers at the I/O address base (3BEh, 37Ah, or 27Ah), base+1 and base+2. It additionally uses an EPP address register at location base+3 (for address write/read cycles) and an EPP data register starting at location base+4. This data register can be up to 32 bits long (four I/O addresses) on PCs that support 32-bit I/O transfers. This way, a single I/O write to the data register under software control can result in four EPP byte writes to a peripheral, under hardware control. This minimizes CPU overhead in servicing the parallel port. Read full chapter https://www.sciencedirect.com/topics/engineering/parallel-port 6/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics URL: https://www.sciencedirect.com/science/article/pii/B9780120683772500085 Interfacing A.C. Fischer-Cripps, in Newnes Interfacing Companion, 2002 2.4.12 Parallel printer port The parallel port normally found on microcomputers is generally used for printer output although there are some input lines which are used to report printer status (such as paper out etc.). The Centronics printer interface consists of 8 data lines, a data strobe, and acknowledge, three control and four status lines. The printer port is driven by the parallel port adaptor. In the adaptor, there are three registers which are assigned I/O port addresses. The byte to be printed is held in the data register which is at the port base address. The printer status register contains the information sent to the computer by the printer, and has an address of base+1. The printer control register has address base+2 and contains the bit settings for computer control of printer functions. Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B978075065720450111X Hardware Ian Sinclair, in Passive Components for Circuit Design, 2001 COMPUTER CONNECTORS https://www.sciencedirect.com/topics/engineering/parallel-port 7/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Computer and other digital signal connections have, at least, reached some measure of standardization after a period of chaos. At one time, it was quite common to see edge connectors used for external connections, but this way of breaking circuit boards has now been abandoned, and edge connectors should be confined now to internal connections. Since the advent of the IBM PC style of computer, there are four main types of connector that are peculiar to computing and digital circuits. The Centronics connector is used mainly for connecting a computer to a printer, and it consists of a 36-contact connector which uses flat contact faces. At one time, both computer and printer would have used identical fittings, but it is now more common for the 36-pin Centronics socket to be used only on the printer. At the computer a 25-pin subminiature D-connection is used, usually with the socket chassis mounted. In a normal connection from computer to printer, only eighteen of the pins are used for signals (including ground). The shape of the body shell makes the connector nonreversible. The original form of Centronics parallel port was intended for passing signals in one direction only, from a computer to a printer. Several designers made use of the unmodified system for bi-directional signals by using the four signal lines that communicated in the reverse direction along with four data lines so as to get 4-bit bi-directional signalling. This in turn gave rise to a standardized system for allowing the use of the parallel port for 8-bit bi-directional signalling. This is the standard IEEE Std. 1284–1994 system, and is otherwise known as the EPP (extended parallel port) system. The EPP system is used for modern printers to allow better software control so that, for example, an inkjet printer can signal that it is running low on ink, or a laser printer can signal that it is running low on toner. More significantly, the EPP has been used for industrial applications as an interface between the computer and machines connected to the computer and controlled by it. Printers of recent manufacture also feature a USB connection as an alternative. The IEEE 1284 standard provides for high-speed signal transfer in both directions between the PC and an external peripheral. The speed of data can be 50 to 100 times faster than was possible using the older Centronics port, but the EPP connection on the PC is still fully compatible with older printers and other peripherals that use the parallel port. You can also use an EPP port along with an older Centronics port on the same PC. The EPP type of port is standard on modern computers, and should normally be set up by using a (default) option in the CMOS ROM. The system offers five modes of operation, four of which maintain compatibility with older methods: 1. Data in forward direction only (out from computer), used for a normal Centronics printer connection. 2. Bi-directional action using four status lines for data in reverse direction along with four data lines in forward direction. This is also known as Nibble mode, and has also been used in cables for connecting two or three computers together in a simple network. 3. Hewlett-Packard Bitronics bi-directional mode, using data lines. 4. ECP (extended capability port) mode for printer and scanner use. 5. Fully bi-directional EPP mode used by some printers and also for computer peripherals such as external CD-ROM, hard drive, etc. The older bi-directional systems require software to implement each transfer, and this limits the transfer rate to, typically, 50–100 Kbytes per second. Modern PC machines have a port that can be used for ECP and EPP modes, and the I/O controller chip firmware allows for direct control of the port action with a greatly reduced external software overhead. A good comparison is the difference between a DMA (Direct Memory Access) transfer and one made by using the processor to read data and write to memory. https://www.sciencedirect.com/topics/engineering/parallel-port 8/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics • The IEEE-1284 standard also provides supporting protocols that allow the PC and its peripheral to agree on which mode to use. The standard also defines the cable and connector formats, with electrical signal specifications. Having EPP/ECP capability on a computer does not guarantee that it will be used when you connect a printer to the port. The printer itself must be capable of operating (usually) in ECP mode, and the operating system must also be capable of using the ECP mode. Although an ECP port can operate in Centronics mode faster than the older type of parallel port, full ECP speed with a printer that can work in this mode requires the ECP port to be set up in the CMOS RAM, and the operating system to use it. Three types of connectors can be used. One, Type A, is the existing DB25 type, updated to 1284 electrical standards. Type B and C are 36-pin connectors, of which the Type C is the standard that is recommended for new designs. Type C is smaller than older 36-pin types, uses a simple clip as anchor, and permits the use of additional signals, peripheral logic high and host logic high. These additional signals are used to find if the devices at each end of the cable are switched on. Figure 9.4 shows these connectors; Types A and B are the familiar DB25 and Centronics types that are currently used. Figure 9.4. Standardized connectors for IEEE-1284 parallel system. The same 25-pin D-connector can be used for serial connections, but more modern machines use 9-pin sub-miniature D-sockets for this purpose, since no more than 9-pin connections are ever needed. For other connections, such as to keyboards, mice and monitors, DIN style connectors are often used, although the sub-miniature D-type connectors are also common. The D-type connectors are widely available in a range of sizes and with a large range of accessories in the form of casings, adapters and tools, so that their use of all forms of digital signals is strongly recommended. There are now standard DIN fittings for edge connectors, including the more satisfactory indirect edge connectors that have now superseded the older direct style. The indirect connectors are mounted on the board and soldered to the PCB leads, avoiding making rubbing contacts with the board itself. Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B9780750649339500091 Parallel ports, power supply and the clock oscillator Tim Wilmshurst, in Designing Embedded Systems with PIC Microcontrollers (Second Edition), 2010 Summary • The parallel port allows ready exchange of digital data between the outside world and the controller CPU. • It is important to understand the electrical characteristics of the parallel port and how they interact with external elements. • https://www.sciencedirect.com/topics/engineering/parallel-port 9/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics While there is considerable diversity in the logic design of ports, they tend to follow similar patterns. The internal circuitry is worth understanding, as it leads to effective use of ports. • The 16F84A has diverse and flexible parallel ports. • A microcontroller needs a clock signal in order to operate. The characteristics of the clock oscillator determine speed of operation and timing stability, and strongly influence power consumption. Active elements of the oscillator are usually built in to a microcontroller, but the designer must select the oscillator type, and its frequency and configuration. • A microcontroller needs a power supply in order to operate. The requirements need to be understood and must be met by a supply of the appropriate type. Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B9781856177504100058 Electronic Systems Design Ian Grout, in Digital Systems Design with FPGAs and CPLDs, 2008 PC Parallel Port (Centronics) The PC parallel port (by Centronics) was until recently the port used primarily to connect the PC [20, 21] to a printer device, as shown in Figure 2.34. Here, each device is fitted with a 36-pin connector, and byte-wide data are sent from the PC to the printer (the peripheral) with handshaking—i.e., both the PC and the peripheral communicate with each other to control data transmission to be at a time suitable for both. Figure 2.34. Connecting a PC to a printer using the parallel port Table 2.5 identifies the cable connections for the Centronics printer port. Signals are transmitted on a twisted-pair (i.e., two wires twisted together) with its own common connection. Signal directions are shown from the perspective of the PC rather than the peripheral. Table 2.5. Centronics (printer) port signals (PC connector) Name Pin Number Direction (PC) Meaning Signal Common STROBE 1 19 OUT Data strobe DO 2 20 OUT Data bit 0 (LSB) D1 3 21 OUT Data bit 1 https://www.sciencedirect.com/topics/engineering/parallel-port 10/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Name Pin Number Direction (PC) Meaning Signal Common D2 4 22 OUT Data bit 2 D3 5 23 OUT Data bit 3 D4 6 24 OUT Data bit 4 D5 7 25 OUT Data bit 5 D6 8 26 OUT Data bit 6 D7 9 27 OUT Data bit 7 (MSB) ACKNLG 10 28 IN Finished with last character BUSY 11 29 IN Not ready PE 12 30 IN No paper SLCT 13 − IN Pulled high AUTO FEED XT 14 − OUT Auto LF INIT 31 16 OUT Initialise printer ERROR 32 − IN Can't print SLCT IN 36 − OUT Deselect protocol GND − 33 − Additional ground CHASSIS GND 17 − − Chassis ground Today, the parallel port connection to the printer is usually replaced by a USB interface. Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B9780750683975000027 Motherboard Design William Buchanan BSc (Hons), CEng, PhD, in Computer Busses, 2000 5.1.4 82091AA (AIP) The AIP device integrates the serial ports, parallel ports and floppy disk interfaces. Figure 5.3 shows its connections and Figure 5.4 shows the interconnection between the AIP and the PIIX3 device. The OSC frequency is set to 14.218 18 MHz. It can be seen that the range of interrupts for the serial, parallel and floppy disk drive is IRQ3, IRQ4, IRQ5, IRQ6 and IRQ7. Normally the settings are: https://www.sciencedirect.com/topics/engineering/parallel-port 11/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Figure 5.3. API IC Figure 5.4. Connections between TXC, PIIX3 and AIP • IRQ3 – secondary serial port (COM2/COM4). • IRQ4 – primary serial port (COM1/COM3). • RQ6 – floppy disk controller. • IRQ7 – parallel port (LPT 1). Figure 5.4 shows the main connections between the TXC, PIIX3 and the AIP. It can be seen that the AIP uses many of the ISA connections (such as 0WS#, IOCHRDY, and so on). The interface between the TCX and the PIIX3 defines the PCI bus and the interface between the PIIX3 and AIP defines some of the ISA signals. https://www.sciencedirect.com/topics/engineering/parallel-port 12/13 2022. 01. 17. 8:26 Parallel Port - an overview | ScienceDirect Topics Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B9780340740767500055 Computer Architecture Morris Chang, in The Electrical Engineering Handbook, 2005 Serial Port and Parallel Port In general, there are two types of communication ports in a computer: serial ports and parallel ports. A serial port is an interface through which peripherals can be connected as a communication channel using a serial (bit-stream) protocol. Usually, a serial mouse is connected to COMI (communication port 1). The most common type of serial port is a 25-pin D-type connector carrying RS-232 signals. Smaller connectors (e.g., 9-pin D-type) carrying a subset of RS-232 are often used on personal computers. The serial port is usually connected to an integrated circuit called a UART that handles the conversion between serial and parallel data. A parallel port is an interface for a computer to communicate peripherals in parallel manner. Data are transferred in or out in parallel, that is, on more than one wire. A parallel port carries 1 bit on each wire, thus multiplying the transfer rate obtainable over a single wire. There will usually be some control signals on the port that indicate when data are ready to be sent or received. The most common type of parallel port is a printer port (e.g., a Centronics port that transfers 8 bits at a time). Disks are also connected via special parallel ports (e.g., SCSI or IDE). Read full chapter URL: https://www.sciencedirect.com/science/article/pii/B978012170960050027X Copyright © 2022 Elsevier B.V. or its licensors or contributors. ScienceDirect ® is a registered trademark of Elsevier B.V. https://www.sciencedirect.com/topics/engineering/parallel-port 13/13