Browse Prior Art Database

Native I/O Ports for Personal Computer System Board

IP.com Disclosure Number: IPCOM000039389D
Original Publication Date: 1987-Jun-01
Included in the Prior Art Database: 2005-Feb-01
Document File: 5 page(s) / 64K

Publishing Venue

IBM

Related People

Fogg, RG: AUTHOR [+3]

Abstract

A method is described to reduce component count, cost, and board area to implement keyboard, speaker, locator, and serial ports on a personal computer (PC) system board. Personal computers usually include circuitry to control the ports to human interface-type devices, such as a keyboard, speaker, locator (mouse or tablet), and at least one serial port (e.g., RS-232C type). These port controllers typically are "native" to the personal computer, i.e., circuitry which the operating system software assumes as part of every machine, and is built into the system board. The IBM PC used separate components to implement the keyboard and speaker on the system board. The serial port was on a separate plug-in board. It had no locator port.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 29% of the total text.

Page 1 of 5

Native I/O Ports for Personal Computer System Board

A method is described to reduce component count, cost, and board area to implement keyboard, speaker, locator, and serial ports on a personal computer (PC) system board. Personal computers usually include circuitry to control the ports to human interface-type devices, such as a keyboard, speaker, locator (mouse or tablet), and at least one serial port (e.g., RS-232C type). These port controllers typically are "native" to the personal computer, i.e., circuitry which the operating system software assumes as part of every machine, and is built into the system board. The IBM PC used separate components to implement the keyboard and speaker on the system board. The serial port was on a separate plug-in board. It had no locator port. The IBM RT PC combined keyboard, speaker, and locator functions in a single custom programmed microcontroller. The serial port was a separate component. The microcontroller and serial port components were on the system board. This new arrangement improves on prior practice through the efficient use of small components called Dual Asynchronous Receiver/Transmitters (DUARTs). A DUART is briefly described as follows: the module consists of internal control and timing logic, maskable interrupt control logic, a bidirectional 8-bit data bus buffer, two independent communication channels (called Channels "A" and "B"), a generalized 7-bit parallel input port, and a generalized 8-bit parallel output port. The operation is determined by properly configuring its internal control registers. Register selection is performed by system software reading or writing via a 4-bit address with 8-bit data. The new arrangement shown in block diagram form in Fig. 1 implements all native I/O functions using only two DUARTs built into the system board which support the keyboard, speaker, mouse, and serial ports. ("Mouse" here should be taken to mean "locator," either a mouse or a tablet device). DUART #1 also provides the interrupt, masking, and sensing functions for other system devices (display and printer parallel port). DUART #2 also provides a programmable signal for another system device (display). The DUART internal control registers must be properly configured in order to achieve the functions listed in Fig. 2 with the DUART facilities. Programming instructions executed in the system processor will accomplish that configuration.

A description of the implementation of each native I/O port function follows. Software running in the system processor controls the DUARTs by means of the "address," "data," and "control" buses in Figs. 3-6. The RT PC keyboard includes a microprocessor which continuously scans the keyboard for key depressions. When a keystroke is detected, the microprocessor encodes the key position as a scan code and sends this value to the system over a serial interface. A shift register accumulates the serial bit stream, interrupting the system when a full frame h...