NEXTSTEP In Focus, Summer/Fall 1994 (Volume 4, Issues 3 and 4). 
Copyright ã1994 by NeXT Computer, Inc. All Rights Reserved.

Bus Terminology

 Before you can jump into configuring PCs, you need to know the lingo. Here's a glossary of important and interesting terms to help you along.

adapter Electronic circuitry that provides an interface, typically between a computer bus and a device or device controller. Some printers may require expansion cards with adapter circuitry (as opposed to device or controller circuitry) on-board. Colloquially the term is used to refer to an expansion card of any kind. 

address bus A set of signals on a computer bus that specify a particular location of a resource being referenced. 

allocation Assigning the use of a particular resource to a particular device. 

Application Programming Interface (API) A protocol dictating the way in which an application program communicates with another software layer, typically an operating system. 

arbitration Determining which resources to assign to which functions, especially given the possibility that two devices may contend for the same resource. 

asymmetry An aspect of bus architecture wherein a primary CPU maintains control of the system bus and controls which device has access to the bus at a particular time. See symmetry. 

autoconfigure Arbitrating and allocating resources to devices automatically, without user intervention, by referencing stored device configuration information. 

autodetect Testing for devices in a system and determining their device type and resource requirements. 

BIOS (Basic Input/Output System) A set of software routines that directly control hardware and provide a software interface to upper layers of software, such as an operating system and application program. Classically, on a PC the BIOS is partly installed in ROM on the motherboard and partly loaded from a special file on disk at boot time. NEXTSTEP avoids reliance on the system BIOS routines, using them only in the preliminary stages of the boot process to provide system messages and get user keystrokes. BIOS also refers to software routines contained on an expansion card. 

bridge A device or chipset providing an interface between two buses. A host bridge is a chipset providing an interface between a CPU and a PCI bus. A bus bridge is a chipset that provides an interface between a PCI bus and another bus. Bus bridges may include PCI to ISA, PCI to EISA, PCI to PCMCIA, and PCI to PCI bus bridges. A PCI system may have a hierarchy of PCI buses, with subordinate buses interfacing to superordinate buses, tree-style, via PCI to PCI bus bridges. 

burst transfer A means of taking control of a bus for multiple clock cycles to transfer data as fast as possible. The burst transfer rate specifies the maximum data throughput for a bus. 

bus A set of wires, each of which has a specified purpose, together providing orderly communication among system components. Computer buses are divided into sub-buses, including the address bus, the data bus, and the control bus. 

bus driver NEXTSTEP software designed to represent a computer system's bus, interacting with the bus and with device drivers to provide access to system resources. A bus driver correlates to a NEXTSTEP bus object, such as the PCMCIA bus object or the PCI bus object. 

bus mastering A scheme that allows devices to take and relinquish control of a bus, typically for high-speed data transfer. 

bus specification A protocol that defines the way in which a bus operates, including its 
physical, electrical, and mechanical characteristics. It may also specify memory and device considerations. 

bus width The number of parallel bit paths provided by the bus, in bits. This is the maximum number of bits transferred in each bus cycle. 

chipset A chip or set of chips that serves a designated function. A modem chipset contains all the electronic circuitry of a modem, but without the serial port circuitry. A hard disk controller chipset provides controller circuitry to interface with the hard disk device. A bus bridge chipset contains circuitry that provides an interface between two buses. 

clock scaling Altering the effective speed of the bus, with primary benefit of electrical power savings. The PCI bus specifies clock scaling. 

configuration Determining and assigning system resources to a device or to all devices within 
a system. 

conflict When two devices contend for the same resource. 

connector A mechanism providing an electrical path between two distinct objects. Typically the edge connector of an expansion card fits into the socket of a slot. 

controller Electrical circuitry providing control of a device, which may itself be electrical circuitry. For example, a hard disk controller is circuitry residing on an expansion card or built into the motherboard that serves as an interface between the system bus and the electronic circuitry on the hard disk drive. 

data transfer rate The speed in bytes per second at which data travels between entities on a bus. 

device An electrical or mechanical system that serves a function. Examples include a hard disk, a modem, and serial port circuitry. Adapter or controller circuitry provides an interface between a device and the bus. Devices may be built into the system motherboard, or they may reside on expansion cards that connect to a socket. NEXTSTEP recognizes classes and types of devices such as IDE hard disk, floppy disk, serial, parallel, bus mouse, display, sound, network, or SCSI. 

device driver Software specially designed to provide an interface between the operating system and a device's controller circuitry. NEXTSTEP object-oriented device drivers have a .config extension and normally reside in the /usr/Devices directory. You use the Configure application to install and allocate resources to device drivers. 

device ID A number, the format of which is prescribed by a bus specification, the value of which determines the vendor and model of a particular device. 

DIP switch Dual In-line Package switch, a mechanical switch contained in standard electronic 
IC form. There are typically four or eight to a package, each switch set to ON or OFF to complete or break a single control circuit. Often used to configure which resources a device uses. See jumper. 

DMA (Direct Memory Access) A system resource that provides a means by which a device takes control of a bus to pass bursts of data directly to or from system memory. The classic PC/AT system presents DMA channels 0 to 7. 

Driver Kitä Part of NEXTSTEP that provides an interface between the kernel and device drivers. 

ECU (EISA Configuration Utility) A software program, generally provided by a system vendor, used to boot a computer and to determine and assign system resources to devices. 

edge connector An area of an expansion card bearing extensions of circuit traces called fingers out to the edge of the card to provide an electrical path to matching connecting pins in a connector of a slot. 

expansion card A printed circuit board containing electronic circuits for adapters, controllers, 
or devices designed to fit into a slot. For instance, an expansion card may contain a hard disk controller or the controller and device circuitry for a modem; or it may contain the adapter circuitry for a printer. 

finger An extension of a circuit trace, generally copper, less often plated with gold, that is designed to fit into a socket and provide electrical contact with the socket's pins. An edge connector is made up of a collection of fingers. See edge connector and expansion card. 

hot-swap Removing an expansion card from a system while the system is running and 
inserting a different expansion card, such that the system recognizes the removal of the 
first and the insertion of the second with proper configuration. The ability to hot-swap 
depends on automatic insertion and removal detection, dictated by a bus specification. 
Hot-swapping may be impossible for the immediate future, as some devices require restarting low-level operating system processes, which is not currently possible. 

ICU (Intel Configuration Utility) A Microsoft program that provides a user-interface for determining available system resources, similar to NEXTSTEP's Configure application. 

I/O port (Input/Output port) A system resource that is an address range specifically for data transfer between the CPU and a device. The ISA I/O port scheme maps a separate address space called the I/O channel that's divided into address ranges assigned to various functions. For example, the COM1 port range is 0x3F8 to 0x3FF, the COM2 port range is 0x2F8 to 0x2FF. 

IRQ (Interrupt Request) A system resource permitting a prioritized means for devices to interrupt the CPU so that their device drivers can take control, then relinquish control such that the CPU resumes its previous task. IRQ levels range from 1 to 15. 

jumper A small conductive connector designed to provide an electrical path between two posts on a printed circuit board, typically connecting one post with either of two other posts or none at all. In an ISA system, a particular connection would correspond to the allocation of a particular resource. Resolving a resource conflict between two devices might require moving a jumper from one position to another. See DIP switch. 

on-board Residing on a printed circuit board. For example, some computer motherboards provide hard disk controllers on-board to eliminate the need for a hard disk controller expansion card. An expansion card may host its own software on-board in ROM. 

power management A means of adjusting electrical current requirements of system components, especially to minimize current drain when a component is not in use. Particularly used in laptop computers and newer ªgreenº PCs. 

printed circuit board (PCB) A rigid insulating board bearing a set of traces that conduct electricity, generally with components soldered onto one side. An ISA expansion card is a printed circuit board with edge connectors that provide a signal path between the bus connector (socket for the slot) and the components on the card itself. 

resource A provision of a computer system, generally with a particular identifying number, that provides a particular interface function between a device and the host system. ISA system resources include DMA channels, IRQ lines, I/O port numbers, and system memory areas. Resources are limited in number, sometimes with uniquely specified functionality, and may or may not be shared among multiple devices. 

slot A piece of computer hardware with a socket designed to accept an expansion card. EISA and MCA slot locations are numbered. EISA slots provide socket connectors with upper ISA-style pins as well as deeper EISA-specific pins. PCI slots provide two connectors in a slot location, one that may be ISA or EISA and the other which is PCI; the slot location thus may host either an ISA (or EISA) expansion card or a PCI expansion card. 

socket A physical connector that accepts an expansion card. Or more generally, a receptacle for any kind of plug. 

space An address area, the range of which is defined by a bus specification. Each space has its own contiguous set of addresses separate from the others, with specifications for format, population, and use. 

symmetry An aspect of a bus's architecture that defines an arbitration mechanism allowing 
any device equal access to the bus. PCI and SCSI are both symmetrical buses in that the host CPU is represented as just another device on the bus, which may be addressed by any other device on the bus. In the case of PCI and SCSI, the device number settles arbitration for the busÐthe lower-numbered device wins. See asymmetry. 

vendor ID A number that identifies the maker of an expansion card. A bus specification that includes a vendor ID requires an authorizing organization to assign unique ID numbers to vendors. EISA, MCA, and PCI have vendor ID specifications.
_________________________________________________________________________________
Next Article	 NeXTanswer #1954    Simple Configuration: Plug and Play 
Previous article 	NeXTanswer #1958   Bus Architectures: An Overview
Table of contents	 http://www.next.com/HotNews/Journal/InFocus/Summer1994/ContentsSummer1994.html